Commit Graph
8098 Commits
Author SHA1 Message Date
Wesley WighamandWesley Wigham 2376e4eb73 Lookup files by resolved Path and not by fileName in sourcemapDecoder when querying program (#25908)
* Check if the file returned by the program actually refers to the same file as we intend

* Simplify
2018-07-24 15:44:59 -07:00
Mohamed HegazyandGitHub fe3bb5888c Merge pull request #25904 from weswigham/port-25838
Call toPath on sourceRoot to ensure it is always absolute (#25838)
2018-07-24 15:01:00 -07:00
Wesley WighamandWesley Wigham 0e4db0758b Call toPath on sourceRoot to ensure it is always absolute (#25838)
* Call toPath on sourceRoot to ensure it is always absolute

* Leave canonicalization to avoid a Path/string union
2018-07-24 14:15:49 -07:00
Wesley WighamandWesley Wigham a4d3bddf62 Inspect all possible module paths when looking for the best one to create a specifier with (#25850)
* Inspect all possible specifier paths when looking for the best one

* Add missing secondary option from test
2018-07-24 14:12:44 -07:00
AndyandGitHub 8817d9e5bc Ensure fixSpelling and importFixes still trigger on "Did you mean the instance/static member ..." (#25847) (#25848) 2018-07-20 18:00:58 -07:00
Anders HejlsbergandMohamed Hegazy d5f3cee35d Add regression test 2018-07-20 15:38:33 -07:00
Daniel Rosenwasser 9d23080b58 Added test. 2018-07-18 15:31:16 -07:00
AndyandGitHub 53d240015c Don't bother trying to get the name of a default export (#25773) (#25776)
* Don't bother trying to get the name of a default export

* Fix lint
2018-07-18 12:23:57 -07:00
AndyandGitHub 83b29eddd7 Fix formatting at trailing comma (#25706) (#25743) 2018-07-17 17:05:49 -07:00
Mohamed HegazyandGitHub 75930f87fe Merge pull request #25699 from Microsoft/revert-explicitly-typed-special-assignments
Revert explicitly typed special assignments
2018-07-16 13:15:06 -07:00
Nathan Shively-Sanders 16676f2707 Revert "Explicitly typed special assignments are context sensitive (#25619)"
This reverts commit 32e60a9647.
2018-07-16 12:39:08 -07:00
Andy Hanson 1038c76f88 navigationBar: Don't merge unrelated grandchildren 2018-07-16 12:38:38 -07:00
Nathan Shively-Sanders ff8c30d636 Revert "Explicitly typed prototype assignments are context sensitive (#25688)"
This reverts commit 5b21cbc0c9.
2018-07-16 12:38:27 -07:00
Daniel RosenwasserandGitHub 93ab352189 Merge pull request #25565 from Microsoft/popFirst
Make 'pop' the first method that uses 'T' in 'Array'
2018-07-16 11:41:44 -07:00
AndyandGitHub afdd47c9ce Simplify rules for isControlFlowEndingStatement (#25693) 2018-07-16 11:17:46 -07:00
Nathan Shively-SandersandGitHub 5b21cbc0c9 Explicitly typed prototype assignments are context sensitive (#25688)
* Explicitly typed prototype assignments:ctx sensitive

Follow up to #25619: Add the necessary code to type `prototype`
correctly in prototype assignments so that code like
`F.prototype = { ... }` properly makes the object literal context
sensitive.

* Fix lint
2018-07-16 10:03:39 -07:00
AndyandGitHub 3f4412b173 getContainingList: Handle TypeAliasDeclaration (#25614)
* getContainingList: Handle TypeAliasDeclaration

* Handle ClassExpression and InterfaceDeclaration
2018-07-13 10:30:22 -07:00
AndyandGitHub 27da9eab8d fixUnreachableCode: Don't delete whole block when non-first line is unreachable (#25625) 2018-07-13 09:57:04 -07:00
AndyandGitHub 88c6ced3c6 indentMultilineCommentOrJsxText: Fix bug when 'parts' is empty (#25645) 2018-07-13 09:56:21 -07:00
AndyandGitHub 1fb050bcca Don't report unused diagnostics when the unused node has a parse error (#25598)
* Don't report unused diagnostics when the unused node has a parse error

* Update test
2018-07-12 17:24:59 -07:00
Nathan Shively-SandersandGitHub 32e60a9647 Explicitly typed special assignments are context sensitive (#25619)
* Explicitly typed js assignments: context sensitive

Explicitly typed special assignments should be context sensitive if they
have an explicit type tag. Previously no special assignments were
context sensitive because they are declarations, and in the common,
untyped, case we inspect the right side of the assignment to get the
type of the left side, and inspect the right side of the assignment to
get the type of the left side, etc etc.

Note that some special assignments still return `any` from
checkExpression, so still don't get the right type.

Fixes #25571

* Change prototype property handling+update bselines

* Fix indentation in test

* Update baselines
2018-07-12 15:28:53 -07:00
AndyandGitHub f500289a44 Stricter test that JSDoc @type tag matches function signature (#25615) 2018-07-12 14:02:02 -07:00
Anders HejlsbergandGitHub 0f8b6fcd27 Merge pull request #25608 from Microsoft/genericRestArityCheck
Fix generic rest parameter arity checks
2018-07-12 09:09:31 -10:00
AndyandGitHub f9764d17f0 fixUnusedIdentifier: Support deleting @template tag (#25597)
* fixUnusedIdentifier: Support deleting @template tag

* Just return createTextRangeFromNode instead of adjusting range
2018-07-12 11:26:17 -07:00
Anders Hejlsberg 5822a8c923 Merge branch 'master' into genericRestArityCheck
# Conflicts:
#	src/compiler/checker.ts
2018-07-12 08:20:48 -10:00
Nathan Shively-SandersandGitHub bd7b97ce61 Get return type from @type tag (#25580)
* Get return type from `@type` tag

This only happens in the checker, where the type is easily accessible.
The syntax-based check in getEffectiveReturnTypeNode as a fast path, and
for other uses that don't want to make a call to getTypeFromTypeNode.

Fixes #25525

* Implement PR suggestions

* Error when type tag isn't callable

* Fix lint
2018-07-12 10:49:41 -07:00
Anders Hejlsberg 55180f7725 Add tests 2018-07-12 07:07:13 -10:00
rflorianandNathan Shively-Sanders 66e9aaac18 Issue 19220 function parameter arity (#24031)
* Added reference test case and diagnostics message

* Adjusted arity checks to account for non-contiguous overloads

* Code cleanup, baseline not yet commited

* Accepted test baselines and minor implementation changes

* Cleaned up baseline tracking the now renamed arity check test

* Add range response when range contains only 2 values

* Added recent baseline

* Refined arity error messages when available overloads can be grouped

* Rolled back code formatting

* WIP cleanup needed in a few edge cases

* Finished adding new more descriptive error messages

* Code cleanup

* Added simplified version of bugfix for #19220

* Rebased onto master

* Removed whitespace after type assertion

* Code review simplifications

* Use correct diagnostic name

* Code review changes and simplification of diagnostic message

* Revert formatting changes
2018-07-11 17:19:56 -07:00
Mohamed HegazyandGitHub 2d0d655fea Merge pull request #25561 from ajafff/multiple-prologue-directives
handle multiple prologue directives
2018-07-11 11:38:01 -07:00
Nathan Shively-SandersandGitHub 42a2d9e568 Excess property understands conditional types (#25584)
Previously it did not, causing misleading excess property errors. Note
that assignability errors with conditional types are still usually
confusing. This PR doesn't address that.

Also, make sure that exact matches in getSpellingSuggestion are skipped.
2018-07-11 11:24:40 -07:00
AndyandGitHub 52486ae362 Improve isPossiblyTypeArgumentPosition (#25043)
* Improve isPossiblyTypeArgumentPosition

* Update API (#24966)

* Handle new Type<Type<

* Add test for `new C < C<`
2018-07-11 11:15:04 -07:00
AndyandGitHub 19993a5408 When import("foo") has module resolution error, error span should be "foo" (#25569)
* When `import("foo")` has module resolution error, error span should be "foo"

* Update more tests
2018-07-11 10:06:08 -07:00
Klaus Meinhardt 2a960011d7 Merge branch 'master' of github.com:Microsoft/TypeScript into multiple-prologue-directives 2018-07-11 18:47:23 +02:00
AndyandGitHub 990d445bb6 In services, when overload resolution fails, create a union signature (2) (#25100) 2018-07-11 08:54:47 -07:00
Daniel Rosenwasser 94ad71ecc3 Added test. 2018-07-10 19:34:19 -07:00
AndyandGitHub 7a79a45aab JSX closing tag completion: Include '>' if not already present (#25551)
* JSX closing tag completion: Include '>' if not already present

* Expand comment
2018-07-10 16:14:57 -07:00
Sheetal Nandi 3866a5048b Report errors for module generation other than "commonjs" with --resolveJsonModule
Fixes #25517
2018-07-10 15:00:46 -07:00
AndyandGitHub b6640e9c5d getJsxClosingTagAtPosition: Return a result if parent has same name and is unclosed (#25557) 2018-07-10 14:31:18 -07:00
Klaus Meinhardt f9eb976319 handle multiple prologue directives
Fixes: #24689
2018-07-10 22:42:21 +02:00
AndyandGitHub 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
AndyandGitHub 72be7156d2 Support completions for unique symbol exported from module (#25537) 2018-07-10 10:47:43 -07:00
Nathan Shively-SandersandGitHub 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-SandersandGitHub 60c0dfeb25 Fix crash in JS when checking destructuring shorthand assignment (#25529) 2018-07-10 08:32:56 -07:00
Wesley WighamandGitHub 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
Mohamed HegazyandGitHub 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
Benjamin LichtmanandGitHub b5f5513e4a Merge pull request #25329 from uniqueiniquity/jsxFolding
Add outlining spans for JSX elements
2018-07-09 12:36:23 -04:00
Daniel RosenwasserandGitHub 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
Wesley WighamandGitHub 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 WighamandGitHub 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