Commit Graph
8645 Commits
Author SHA1 Message Date
Wesley WighamandGitHub 03a98a2840 Merge pull request #28783 from weswigham/fix-typeparam-parent
Add missing case to declaration diagnostic handler
2018-12-03 09:15:38 -08:00
Anders HejlsbergandGitHub 28f8fdaccd Merge pull request #28784 from Microsoft/controlFlowDestructuringLoop
Fix control flow analysis of destructuring in loops
2018-12-01 07:01:43 -08:00
Wesley Wigham cd6fdb11d6 Add constructor case 2018-11-30 17:44:25 -08:00
Anders Hejlsberg 290eff9722 Add regression test 2018-11-30 16:28:21 -08:00
Wesley Wigham fa8df0d32c Add missing case to declaration diagnostic handler 2018-11-30 16:25:07 -08:00
Daniel Rosenwasser b44ee8ef4b Added tests for types with overlap across a single property name. 2018-11-30 14:59:43 -08:00
Sheetal Nandi 23abcc02a3 Use compilerOptionsIndicateEs6Modules over program contains es6 modules for determining auto import offering. Also dont depend on uncheck js file for this.
Fixes #28696
2018-11-29 11:58:32 -08:00
Anders HejlsbergandGitHub 36dc04b982 Merge pull request #28718 from Microsoft/fixDefinitelyAssignableRelation
Fix definitely assignable relation
2018-11-28 17:38:51 -08:00
Anders Hejlsberg d832fbf46a Add regression test 2018-11-28 14:58:11 -08:00
Wesley WighamandGitHub 54bbf74f62 Do not lookup name of default property symbols from the symbols value declaration (#28711) 2018-11-28 13:58:43 -08:00
Nathan Shively-Sanders f915420c80 Revert "Don't consider 'typeof a' as using 'a' (#28528)"
This reverts commit 0c4ceeec24.
2018-11-26 14:45:19 -08:00
Daniel RosenwasserandGitHub 6627d33540 Merge pull request #27087 from Microsoft/overlappyTypes
Elaborate on types in unions with the most overlap in properties
2018-11-26 14:58:15 -05:00
Klaus MeinhardtandNathan Shively-Sanders 94d7e30393 MethodSignature doesn't have 'arguments' (#28625)
Fixes: #28622
2018-11-20 13:01:34 -08:00
Wesley WighamandGitHub 96937fd592 Allow union signatures to merge when they have differing argument counts (#28604)
* Allow union signatures to merge when they have differing argument counts

* Accept updated baselines

* Adjust comments io changed tests
2018-11-19 17:05:28 -08:00
Nathan Shively-SandersandGitHub 0774bb81ce Fix crash on property assignment of unresolved module (#28606)
Previously, the compiler would crash when binding a non-top-level
property assignment on the symbol of an unresolved module:

```js
import x from 'arglebaz'
{
    x.bar = 1
}
```

That's because `x` looks like an alias but doesn't have a
valueDeclaration (since there is no file named 'arglebaz'), and the new
code for binding Object.defineProperty calls forgot to check for an
undefined valueDeclaration.

This change adds the checks for an undefined valueDeclaration.
2018-11-19 13:29:46 -08:00
AndyandNathan Shively-Sanders 79b9fa51b6 Avoid infinite loop checking yield expression (#21728)
* Avoid infinite loop checking yield expression

* Revert now-unneeded change

* Revert test filename changes
2018-11-19 11:18:32 -08:00
AndyandNathan Shively-Sanders ca7f78b8df Fix typo (#28526) 2018-11-19 10:54:54 -08:00
AndyandNathan Shively-Sanders b8a8ceae86 Handle merging unknownSymbol (#28453)
* Handle merging unknownSymbol

* mergeSymbol of unknown target returns source, not unknown
2018-11-19 10:51:58 -08:00
Sheetal NandiandGitHub dc03115d14 Merge pull request #28585 from Microsoft/isTypeOnlyCompletion
Properly set symbolMeanings when calling getSymbolsInScope
2018-11-19 08:50:41 -08:00
Sheetal NandiandGitHub eeaa8bb527 Merge pull request #28533 from Microsoft/generateGetAndSet_noFindAllRefs
generateGetAccessorAndSetAccessor: Don't use FindAllReferences
2018-11-19 08:47:12 -08:00
Wesley WighamandGitHub 608a8307ac Dont emit module resolution errors when looking up specifiers for container symbols (#28558) 2018-11-16 17:15:40 -08:00
Andy Hanson 59c014ba32 Properly set symbolMeanings when calling getSymbolsInScope 2018-11-16 17:04:29 -08:00
Wesley WighamandGitHub cd08a22ef5 Clamp calculated sourcemap positions rather than throwing (#28583)
* Clamp calculated sourcemap positions rather than throwing, to allow the underlying file to drift out of date with the sourcemap without a crash

* Clamp line as well
2018-11-16 16:05:07 -08:00
Sheetal NandiandGitHub 6bb1ff2214 Merge pull request #27376 from Microsoft/codeFixCannotFindModule_suggestion_falsePositive
Don't implicit-any diagnostic for json module
2018-11-16 15:48:37 -08:00
Daniel Rosenwasser 6ae288fbb3 Merge remote-tracking branch 'origin/master' into overlappyTypes 2018-11-16 15:02:13 -08:00
AndyandGitHub e0dca0bd95 Error when destructuring private property in a parameter (#28562) 2018-11-16 12:47:05 -08:00
Nathan Shively-SandersandGitHub ea8ccc2ce4 In JS, constructor functions infer from call+construct (#28353)
* constructor functions infer from call+construct

Also fix an incorrect combining of inferences for rest parameters: the
inferred types will be arrays in the body of the function and the
arguments from outside the function will be the element type.

* All functions infer from call+construct contexts
2018-11-16 09:51:07 -08:00
AndyandGitHub 0c4ceeec24 Don't consider 'typeof a' as using 'a' (#28528)
* Don't consider 'typeof a' as using 'a'

* Also handle markPropertyAsReferenced

* Use isInTypeQuery
2018-11-16 08:35:36 -08:00
AndyandGitHub b059135c51 When adding relative completions with rootDirs, still add completions for regular relative imports (#28561) 2018-11-15 15:11:27 -08:00
Wesley WighamandGitHub b90d2910fb Strongly typecheck unions of intrinsic tag names (#28557) 2018-11-15 13:46:32 -08:00
Nathan Shively-SandersandGitHub 6cee7c3080 Better nameless parameter implicit any error (#28554)
* Initial version, doesn't work for primitives yet.

Need to find out why.

* Primitives now work, plus improve error message

null and void don't even parse without parameter names so they are not
tested.

* Codefix: Add names to nameless parameters

* Improve error wording

* Add detail to error message
2018-11-15 12:45:39 -08:00
AndyandGitHub 079f0436f3 Remove unused function (#28531) 2018-11-15 09:34:07 -08:00
Nathan Shively-SandersandGitHub 53bb4e84a2 Better checking of assignment declarations (#28387)
Previously, type checking was turned off for all assignment
declarations. This is a problem when the declarations are annotated with
jsdoc types.

This PR checks assignment declarations, *except* for expando
initialisers. Expando initialisers are

1. Empty object types.
2. Function types.
3. Class types.
4. Non-empty object types when the assignment declaration kind is
prototype assignment or module.exports assignment.
2018-11-15 08:46:11 -08:00
Nathan Shively-SandersandGitHub 7a7328a17f string|number inferences are low priority (#28381)
* string|number inferences are low priority

Also, refactor unifyFromContext to explicitly handle priorities

* string/number/strnum are not mutually exclusive

* Assert that high/low can't apply to same element
2018-11-15 08:32:28 -08:00
AndyandGitHub 2600250a24 Add 'bigint' to type keywords (#28537) 2018-11-14 22:18:05 -08:00
Daniel RosenwasserandGitHub fe263708be Merge pull request #27019 from iliashkolyar/codefix_add_missing_new_operator
Codefix: add quick fix for missing 'new' operator
2018-11-14 16:53:25 -08:00
Andy Hanson 643678bb54 generateGetAccessorAndSetAccessor: Don't use FindAllReferences 2018-11-14 15:05:46 -08:00
Aziz KhambatiandWesley Wigham 24759b81e6 Fix comments after sread expression, spread assignment (#28482) 2018-11-14 14:20:07 -08:00
AndyandGitHub da37457c72 When renaming an imported symbol, rename only in current file (#28406)
* When renaming an imported symbol, rename only in current file

* Improve re-export references

* Remember to use 'range' in for loop

* Uncomment tests
2018-11-14 09:09:00 -08:00
Wesley WighamandGitHub 7a71887c23 Build better import paths for declaration emit/typeToString from reexports if possible (#27340)
* Build better import paths from reexports if possible, issue error on node_modules import generation

* Small refactorings

* Add file-by-file cacheing

* Minor cleanups

* Adjust error message
2018-11-13 14:07:54 -08:00
Wesley WighamandGitHub 004dc89600 Use elipses for reverse mapped types in nested positions (#28494) 2018-11-12 18:50:08 -08:00
Wesley WighamandGitHub d99de73e85 Handle type argument lists as jsx completion starts (#28493)
* Handle type argument lists as jsx completion starts

* preceeding -> preceding
2018-11-12 16:30:04 -08:00
Daniel RosenwasserandGitHub 25462beeb7 Merge pull request #28456 from Microsoft/nonExperimentalBigInt
BigInt shouldn't be considered experimental
2018-11-12 15:59:15 -08:00
Wesley WighamandGitHub 2b345cc8f8 Track type recusion and symbol instantiation depth seperately in createAnonymousTypeNode (#28490) 2018-11-12 15:45:36 -08:00
Daniel Rosenwasser 9e92597ae7 More general test case name. 2018-11-12 14:52:44 -08:00
Daniel Rosenwasser e4bb1973ed Fixed up flags on test cases and stray newline. 2018-11-12 14:52:44 -08:00
Daniel RosenwasserandGitHub 830be0651c Merge pull request #27669 from Microsoft/betterErrorForAccidentalCall
Always emit diagnostic when a call expression can be fixed by adding a semicolon
2018-11-12 14:50:23 -08:00
Wesley WighamandGitHub 13234b62f5 Force inner indexed access simplification during inference, if possible (#28420)
* Force inner indexed access simplification during inference, if possible

* rename

* Refactor to used shared implementation of distribution
2018-11-12 14:39:43 -08:00
Wesley WighamandGitHub eb21eb8e11 Ensure all default type params are mapped to some default even in circular scenarios (#28423)
* Ensure all default type params are mapped to some default even in circular scenarios

* Add js example, fix typo
2018-11-12 13:52:47 -08:00
AndyandGitHub fe1ba9bee3 Improvements to generateTypes (#28458)
* Improvements to generateTypes

* createProperty only if necessary
2018-11-12 11:50:48 -08:00