Commit Graph
8631 Commits
Author SHA1 Message Date
Klaus Meinhardt 94d7e30393 MethodSignature doesn't have 'arguments' (#28625)
Fixes: #28622
2018-11-20 13:01:34 -08:00
Wesley Wigham 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-Sanders 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
Andy 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
Andy ca7f78b8df Fix typo (#28526) 2018-11-19 10:54:54 -08:00
Andy 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 Nandi dc03115d14 Merge pull request #28585 from Microsoft/isTypeOnlyCompletion
Properly set symbolMeanings when calling getSymbolsInScope
2018-11-19 08:50:41 -08:00
Sheetal Nandi eeaa8bb527 Merge pull request #28533 from Microsoft/generateGetAndSet_noFindAllRefs
generateGetAccessorAndSetAccessor: Don't use FindAllReferences
2018-11-19 08:47:12 -08:00
Wesley Wigham 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 Wigham 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 Nandi 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
Andy e0dca0bd95 Error when destructuring private property in a parameter (#28562) 2018-11-16 12:47:05 -08:00
Nathan Shively-Sanders 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
Andy 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
Andy b059135c51 When adding relative completions with rootDirs, still add completions for regular relative imports (#28561) 2018-11-15 15:11:27 -08:00
Wesley Wigham b90d2910fb Strongly typecheck unions of intrinsic tag names (#28557) 2018-11-15 13:46:32 -08:00
Nathan Shively-Sanders 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
Andy 079f0436f3 Remove unused function (#28531) 2018-11-15 09:34:07 -08:00
Nathan Shively-Sanders 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-Sanders 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
Andy 2600250a24 Add 'bigint' to type keywords (#28537) 2018-11-14 22:18:05 -08:00
Daniel Rosenwasser 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 Khambati 24759b81e6 Fix comments after sread expression, spread assignment (#28482) 2018-11-14 14:20:07 -08:00
Andy 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 Wigham 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 Wigham 004dc89600 Use elipses for reverse mapped types in nested positions (#28494) 2018-11-12 18:50:08 -08:00
Wesley Wigham 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 Rosenwasser 25462beeb7 Merge pull request #28456 from Microsoft/nonExperimentalBigInt
BigInt shouldn't be considered experimental
2018-11-12 15:59:15 -08:00
Wesley Wigham 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 Rosenwasser 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 Wigham 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 Wigham 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
Andy fe1ba9bee3 Improvements to generateTypes (#28458)
* Improvements to generateTypes

* createProperty only if necessary
2018-11-12 11:50:48 -08:00
Sheetal Nandi cce26c8ff1 When serializing conditional types, use true and false type to determine emit
Fixes #27999
2018-11-12 09:23:29 -08:00
Klaus Meinhardt 3dfd9c1b9b Add test for #28468 2018-11-11 18:47:02 +01:00
Anders Hejlsberg a2205ad53d Merge pull request #28429 from Microsoft/fixEmptyObjectIntersection
Fix empty object intersections
2018-11-10 00:44:57 -08:00
Wesley Wigham 7d4e0e6297 Fix duplicated amd module comments in declaration bundle (#28451) 2018-11-09 17:18:34 -08:00
Sheetal Nandi d6df82a77c Merge pull request #28454 from Microsoft/codeFixAfterPrologue
Include code fix after prologue
2018-11-09 16:56:43 -08:00
Daniel Rosenwasser 15f2f047f8 Updated test case. 2018-11-09 16:21:06 -08:00
Sheetal Nandi c60ff902f1 Include code fix after prologue
Fixes #15515
2018-11-09 16:02:16 -08:00
iliashkolyar 047b76f979 Merge branch 'master' into codefix_add_missing_new_operator 2018-11-10 01:45:11 +02:00
Daniel Rosenwasser 02ca5bebbf Merge pull request #28340 from saschanaz/listindent-revive
List position based formatting
2018-11-09 15:34:16 -08:00
Daniel Rosenwasser 2585ccbe39 Merge pull request #28281 from ryanclarke/master
Add codefix for 'convert to unknown' diagnostic
2018-11-09 14:43:25 -08:00
Andy c0e5c80e53 Add exports of current module to getSymbolsInScope (#28442) 2018-11-09 12:48:10 -08:00
Andy aaf1d8055b Support finding references at module in module.exports = or export in export = (#28221)
* Support finding references at `module` in `module.exports =` or `export` in `export =`

* Add json test
2018-11-09 09:38:45 -08:00
Markus Wolf 6bd298b884 add test for remove modifier and parameter 2018-11-09 09:45:12 +01:00