7908 Commits

Author SHA1 Message Date
Mohamed Hegazy
35d25ff280
Merge pull request #24645 from Kingwl/this-type-accessibility
allow access protected member in this parameter context
2018-06-11 13:17:58 -07:00
Mohamed Hegazy
e07e2e0e1f
Merge pull request #23423 from Kingwl/add-braces
add support for add or remove braces to arrow function
2018-06-11 13:09:38 -07:00
Andy
7df81311ac
goToDefinition: Don't add duplicate definitions for VariableDeclaration and ArrowFunction at f = () => {} (#24863) 2018-06-11 11:20:34 -07:00
Andy
1aad3c6273
addClassStaticThisReferences: Don't cross class boundary (#24860) 2018-06-11 10:51:11 -07:00
Andy
986532d36b
Fix bug: In findAllReferences, don't crash on static method missing body (#24814) 2018-06-11 08:43:17 -07:00
Andy
04187bde8d
fixStrictClassInitialization: Support array initializer (#24810) 2018-06-08 15:56:56 -07:00
Sheetal Nandi
8c7a9ccc27
Merge pull request #24811 from Microsoft/computedPropertyNameWithDefaultImport
Always resolve the first identifier of computed property name to get the symbol and track it
2018-06-08 15:35:38 -07:00
Andy
e821d613a1
fixUnusedIdentifier: Remove unused writes (#24805) 2018-06-08 15:20:33 -07:00
Sheetal Nandi
5d70d9223c Always resolve the first identifier of computed property name to get the symbol and track it
Fixes #24798
2018-06-08 14:03:18 -07:00
Wesley Wigham
4240d9dc0f
always visit them all (#24802) 2018-06-08 13:11:30 -07:00
Andy
855c3a6d4f
fixUnusedIdentifier: Delete trailing comma in array binding pattern (#24800) 2018-06-08 10:39:01 -07:00
kingwl
0d730c008a Merge branch 'master' into add-braces 2018-06-09 01:32:53 +08:00
Mohamed Hegazy
b4dea5ecce
Merge pull request #24760 from krk/codefix-asterisk
addMethodDeclaration codefix creates a generator function when target…
2018-06-08 08:57:49 -07:00
Andy
3822e3e4ed
tryGetModuleNameAsNodeModule: Ignore file extension (#24774) 2018-06-07 15:45:03 -07:00
Ron Buckton
e947154aec
Merge pull request #24768 from Microsoft/fix24722
Fix prologue order in async function
2018-06-07 15:05:09 -07:00
Andy
48dedacf3b
fixStrictClassInitialization: Don't provide a default for string or number (#24767)
* fixStrictClassInitialization: Don't provide a default for `string` or `number`

* Update baselines
2018-06-07 15:03:38 -07:00
Andy
33d0893259
Add completions from literal contextual types (#24674)
* Add completions from literal contextual types

* Remove getTypesOfUnion

* undo baseline changes
2018-06-07 15:03:19 -07:00
Andy
fde6f22408
Fix bug: In newFileChanges, setParentNodes in new source file (#24765) 2018-06-07 14:28:06 -07:00
Ron Buckton
2b4569c04f Fix prologue order in async function 2018-06-07 13:34:16 -07:00
Andy
87217018b8
Add 'nameSpan' property to NavigationTree (#24698) 2018-06-07 12:43:57 -07:00
Andy
0fefaf286d
moveToNewFile: Infer quote preference (#24652) 2018-06-07 12:10:48 -07:00
Andy
83c58a4fb5
Don't consider x. a new identifier location just because x has a number index signature (#24699)
* Don't consider `x.` a new identifier location just because x has a number index signature

* Update more tests
2018-06-07 12:05:47 -07:00
krk
acbda14450 addMethodDeclaration codefix creates a generator function when target is child of a YieldExpression, resolves #24728 2018-06-07 20:59:06 +03:00
Wesley Wigham
d0ae03c4cc
Handle import types in serializeType (#24701) 2018-06-07 10:40:14 -07:00
Mohamed Hegazy
34dd7738c9
Merge pull request #24672 from bakkot/binding-comma
Allow trailing commas after non-rest elements in destructuring
2018-06-06 13:00:17 -07:00
Nathan Shively-Sanders
30994c86e4
Improve valueDeclaration for js module merges (#24707)
Nearly everything in a merge of JS special assignments looks like a
valueDeclaration. This commit ensures that intermediate "module
declarations" are not used when a better valueDeclaration is available:

```js
// File1.js
var X = {}
X.Y.Z = class { }

// File2.js
X.Y = {}
```

In the above example, the `Y` in `X.Y.Z = class { }` was used as the
valueDeclaration for `Y` because it appeared before `X.Y = {}` in the
compilation.

This change exposed a bug in binding, #24703, that required a change in
typeFromPropertyAssignmentOutOfOrder. The test still fails for the
original reason it was created, and the new bug #24703 contains a repro.
2018-06-06 11:11:15 -07:00
Nathan Shively-Sanders
d6250c8342
Fix circularity error when extending class in same JSContainer (#24710)
Do this by not widening properties of an object literal that are

1. JS initialisers
2. and not an object literal

These properties have types that will never widen, so the compiler
shouldn't ask for the types earlier than it strictly needs to.
2018-06-06 09:13:38 -07:00
Wesley Wigham
d9b93903c0
Use more nodelike paths for import types when possible (#24610)
* Use more nodelike paths for import types when possible

* move functionality from services into compiler, fix with propert file/directory conflict handling

* mark suspect cast
2018-06-05 12:54:36 -07:00
Andy
735a46f838
If parsing a function type fails, parseTypeReference() to ensure something is returned (#24567)
* If parsing a function type fails, parseTypeReference() to ensure something is returned

* Avoid tryParse

* Add missing semicolon

* Don't check for undefined, check for missing type

* Don't set parameters undefined, set to missingList and return false

* Update API baselines

* Code review
2018-06-05 10:24:37 -07:00
王文璐
0bcbbbdd58 disallow static field access 2018-06-05 18:42:21 +08:00
Ron Buckton
fbeb58a147
Merge pull request #23893 from Microsoft/libReference
Adds 'lib' reference directives
2018-06-04 16:14:52 -07:00
Kevin Gibbons
87bb5e3cbb Allow trailing commas after-rest elements in destructuring 2018-06-04 14:58:30 -07:00
Ron Buckton
666841264c Merge branch 'master' into libReference 2018-06-04 14:38:56 -07:00
Wesley Wigham
7eaa78846e
Visit the children of an import type/require call/dynamic import when looking for those (#24663) 2018-06-04 14:31:56 -07:00
Wesley Wigham
cbbf2e4e6f
Resolve aliases before using getTypereferenceType (#24594) 2018-06-04 14:19:41 -07:00
Andy
a641e6f85f
goToDefinition: Put variable definition before signature definition (#24649)
* goToDefinition: Put variable definition before signature definition

* Fix lint
2018-06-04 14:13:27 -07:00
Sheetal Nandi
c3dcc83d4f
Merge pull request #24664 from Microsoft/builderAPIBreak
Fix the issue with createSemanticDiagnosticsBuilderProgram, createEmitAndSemanticDiagnosticsBuilderProgram and createAbstractBuilder not assignable to CreateProgram<T>
2018-06-04 13:35:40 -07:00
Nathan Shively-Sanders
7db4b1cbc7
Fix property assignment on aliases (#24659)
Aliases don't have valueDeclarations, which caused a crash when passed
to isJavascriptContainer before.
2018-06-04 13:34:23 -07:00
Sheetal Nandi
8427e95386 Tests to acknowledge the public watch api 2018-06-04 12:59:01 -07:00
Nathan Shively-Sanders
34e68efdae
Template tag allows specification of constraints (#24600)
* Parse (and mostly support) template tag constraints

A bunch of tests hit the asserts I added though.

* Messy version is finished. Need to add a few tests

* Refactor to be smaller

* Small refactor + Add one test

* Another test

* Minor cleanup

* Fix error reporting on type parameters on ctors

* Simplify syntax of `@template` tag

This is a breaking change, but in my sample, nobody except webpack used the
erroneous syntax. I need to improve the error message, so
jsdocTemplateTag3 currently fails to remind me of that.

* Better error message for template tag

* Fix fourslash baselines

* Another fourslash update

* Address PR comments

* Simplify getEffectiveTypeParameterDeclarations

Make checkGrammarConstructorTypeParameters do a little more work
2018-06-04 11:42:46 -07:00
Andy
2ce7e5f0cd
Add 'unknown' to type keywords (#24606) 2018-06-04 11:31:48 -07:00
Andy
d8cea359f7
moveToNewFile: Update namespace imports (#24612) 2018-06-04 11:30:14 -07:00
Anders Hejlsberg
75d0852d3e
Merge pull request #24637 from Microsoft/fixIndexedAccessSimplification
Fix indexed access simplification
2018-06-04 10:58:23 -07:00
Sheetal Nandi
d64608dc97
Merge pull request #24615 from Microsoft/jsonSourceMaps
Disable source maps and declaration emit for the json module
2018-06-04 10:48:43 -07:00
Andy
046c5ea6c1
moveToNewFile: Ignore reference to global (#24651) 2018-06-04 10:35:23 -07:00
Wesley Wigham
779fa98475
Fix merge lexical environment to *always* respect prologue statements (#24602) 2018-06-04 10:34:38 -07:00
Andy
886377f8d3
Add autoCloseTag language service (#24543)
* Add autoCloseTag language service

* Change name to getJsxClosingTagAtPosition and return an object
2018-06-04 10:08:15 -07:00
王文璐
9767fbba09 allow access protected member in this parameter context 2018-06-04 15:16:59 +08:00
Anders Hejlsberg
54f9c17045 Add regression test 2018-06-03 11:59:24 -07:00
Anders Hejlsberg
6f2001fb23 Add tests 2018-06-02 17:43:37 -07:00