Commit graph

23623 commits

Author SHA1 Message Date
csigs d1e8b3ac2f
LEGO: Merge pull request 24648
LEGO: Merge pull request 24648
2018-06-04 09:11:08 -07:00
csigs 91dd3b16ab LEGO: check in for master to temporary branch. 2018-06-04 16:10:46 +00:00
csigs e05cce0f0e
LEGO: Merge pull request 24646
LEGO: Merge pull request 24646
2018-06-04 03:10:55 -07:00
csigs c5492fa159 LEGO: check in for master to temporary branch. 2018-06-04 10:10:32 +00:00
Anders Hejlsberg 667de4bbb9
Merge pull request #24627 from Microsoft/typeofFunction
Fix typeof x === "function" type guards
2018-06-02 18:46:52 -07:00
Anders Hejlsberg 8b38d357e1 Accept new baselines 2018-06-02 17:44:02 -07:00
Anders Hejlsberg 6f2001fb23 Add tests 2018-06-02 17:43:37 -07:00
Anders Hejlsberg 0ff597c3a8 Improve typeof x === "function" narrowing for non-unions 2018-06-02 17:42:07 -07:00
Mohamed Hegazy 64c366562e
Merge pull request #24616 from dsherret/fix-createProgram
Fix createProgram js docs.
2018-06-02 16:16:36 -07:00
csigs ed728f186b
LEGO: Merge pull request 24618
LEGO: Merge pull request 24618
2018-06-01 21:10:52 -07:00
csigs 72ac87f243 LEGO: check in for master to temporary branch. 2018-06-02 04:10:31 +00:00
David Sherret 7e0ed5ec4d Fix createProgram js docs. 2018-06-01 23:29:05 -04:00
Andy 9be846e1f2
Fix bug when name resolution fails in a @typedef: Don't set lastLocation (#24585)
* Fix bug when name resolution fails in a @typedef: Don't set `lastLocation`

* Add noEmit to test
2018-06-01 16:49:54 -07:00
csigs a58054df99
LEGO: Merge pull request 24601
LEGO: Merge pull request 24601
2018-06-01 15:11:04 -07:00
csigs fb853a6624 LEGO: check in for master to temporary branch. 2018-06-01 22:10:44 +00:00
Wesley Wigham 1b6d9229f2
Visit super arguments even when no signature exists (#24591) 2018-06-01 14:14:56 -07:00
Wesley Wigham f8503f2632
Include export specifiers in the list of syntactic defaults (#24549) 2018-06-01 10:40:30 -07:00
Andy 7e249ce721
Reduce size of span for unused declaration (revert #22388) (#24566) 2018-06-01 09:50:32 -07:00
Dan Freeman 4a36ee0c62 Support import completion for merged declaration exports (#24539) 2018-06-01 09:46:56 -07:00
csigs 7edc977c1c
LEGO: Merge pull request 24571
LEGO: Merge pull request 24571
2018-06-01 09:11:04 -07:00
csigs 8310bdde49 LEGO: check in for master to temporary branch. 2018-06-01 16:10:41 +00:00
Andy d671c7ae96
getEditsForFileRename: Support directory rename (#24305)
* getEditsForFileRename: Support directory rename

* Code review

* Handle imports inside the new file/directory

* Document path updaters

* Shorten relative paths where possible

* Reduce duplicate code

* Rewrite, use moduleSpecifiers.ts to get module specifiers from scratch instead of updating relative paths

* Update additional tsconfig.json fields

* Add test with '.js' extension

* Handle case-insensitive paths

* Better tsconfig handling

* Handle properties inside compilerOptions

* Use getOptionFromName
2018-06-01 08:23:37 -07:00
Zen 95df51b7cf remove redundant assertions in fourslash tests (#24561) 2018-06-01 08:16:03 -07:00
Andy e65444214c
Remove deprecated internal method (#24540) 2018-06-01 08:14:07 -07:00
Andy 9d42ab983d
implementations: Use declaration name for the span (#24537)
* implementations: Use declaration name for the span

* Always get name in nodeEntry
2018-05-31 13:32:02 -07:00
Sheetal Nandi 997991fdcb
Merge pull request #24529 from Microsoft/suggestionDiagnosticsToken
Suggestion diagnostics to wire cancellationToken
2018-05-31 13:22:49 -07:00
Sheetal Nandi fd242250c5
Merge pull request #24536 from Microsoft/trailingCommaInJson
Do not emit trailing comma in json module
2018-05-31 13:16:48 -07:00
Mohamed Hegazy 1f66f21e82
Merge pull request #24431 from Zzzen/master
Document highlights on yield keywords highlight other occurrences in …
2018-05-31 12:52:56 -07:00
Sheetal Nandi eab21e5b77 Merge branch 'master' into suggestionDiagnosticsToken 2018-05-31 12:46:33 -07:00
Sheetal Nandi 1696da14f2 Do not emit trailing comma in json module
Fixes #24530
2018-05-31 12:40:08 -07:00
Mohamed Hegazy e9dda76874
Merge pull request #24515 from Kingwl/esnext-symbol
add esnext symbol proposal
2018-05-31 12:23:01 -07:00
Mohamed Hegazy 86fe529f72
Merge pull request #24524 from a-tarasyuk/bug/24514-use-strict-prologue-emitted-in-json-files
Do not emit 'use strict' prologue in .json files with --alwaysStrict
2018-05-31 12:16:04 -07:00
Mohamed Hegazy fef9fe3b58
Merge pull request #24527 from sambostock/rename-flatten-to-flat
Rename ESNext `flatten` to `flat`
2018-05-31 12:13:40 -07:00
Nathan Shively-Sanders d187de2076
Better JS container binding (#24367)
* Static assignments to class expressions work

* Bind static properties of functions too

Also update SymbolLinks in getTypeOfFuncClassEnumModule so that the
type gets cached correctly.

* Remove initializer handling:obj literals+type lookup

Also include a couple of improved baselines

* Fix 1-nested js containers:binding+cross-file merge

* Consolidate check into one utility

The utility is horrible and needs to change, but at least it's in one
place.

Next step is to make the utility like getDeclarationOfAlias, except
getDeclarationOfJSAlias.

* Defaulted assignments now (mostly) work

* Default assignment definitely work, and IIFEs kind of do

* n-nested undeclared containers now seem to work

Merging even seems to work ok.

* Handle prototype+prototype property assignments

Perhaps in the wrong way. I have an idea how to simplify them.

* Remove prototype special-case

1. It's not completely removed; the checker code in
getJavascriptClassType needs to be fixed, among other places.
2. I didn't actually remove the code so that it will be easier to see
what used to be there on Monday.

Regardless, the code will be much simpler and seems to be mostly
improved with very little work so far.

* Allow more merges+accept baselines

* Update more baselines

* Fix js initializer check in bindPropertyAssignment

* Fix codefixes

* Rest of strictNullChecks cleanup + other cleanup

1. Remove a few TODOs
2. Remove extraneous SymbolFlag
3. Simplify isSameDefaultedName

* Binder cleanup

* Checker cleanup

* Almost done with utilities cleanup

* Utilities cleanup

* Require js initializer to be (1) JS (2) initializer

Change getDeclarationOfJSInitializer to require that the provided js
initializer be in a javascript file, and that it is the initializer of
the retrieved declaration.

* Use getSymbolOfNode instead of accessing symbol directly

* Ugh. Start over with just test cases

* Handle additional cases in getTypeOfVariableOrParameterOrProperty

These are cases in a really embarrassing check, in which we admit that
the symbol flags steered us wrong and switch to
getTypeOfFuncClassEnumModule instead (which never asserts).

* Add test case for #24111

* Address PR comments
2018-05-31 11:41:26 -07:00
Sheetal Nandi b0f039c9e2 Make suggestion diagnostics to wire cancellationToken
This especially needed if its a js file without the ts-check, the file wont be typechecked in getSemanticDiagnostics
Fixes part of #19458
2018-05-31 10:47:17 -07:00
Alexander T 7ef7f907b9 Do not emit 'use strict' prologue in .json files with --alwaysStrict 2018-05-31 20:28:53 +03:00
Sam Bostock 689d2b6ab5
Rename ESNext flatten to flat 2018-05-31 13:11:28 -04:00
Mohamed Hegazy 70ad5a39c3
Merge pull request #24521 from typescript-bot/user-update-20180404
🤖 User test baselines have changed
2018-05-31 09:56:16 -07:00
typescript-bot 821b459a77 Update user baselines 2018-05-31 13:30:38 +00:00
Zzzen 2a8ff1c8d9 Merge remote-tracking branch 'ms/master' 2018-05-31 20:49:43 +08:00
Zzzen 8c95bf3cd7 Merge remote-tracking branch 'ms/master' 2018-05-31 20:41:59 +08:00
王文璐 7910bbdccb add esnext symbol proposal 2018-05-31 13:30:31 +08:00
Wesley Wigham 576a733378
For type emit, walk non-parent containers when those containers have aliases leading to the target (#24507) 2018-05-30 17:52:59 -07:00
Andy 2cb46407b1
moveToNewFile: Remove newlines after last moved statement (#24503) 2018-05-30 15:16:03 -07:00
Mohamed Hegazy bfa3b95807 Update authors 2018-05-30 15:05:34 -07:00
Wesley Wigham 04379d548c
Lookup type arguments correcly for taged templates when checking generic arity (#24496) 2018-05-30 15:03:04 -07:00
Vyacheslav Pukhanov 75f20f9b65 fixUnusedIdentifier: fix "Remove variable statement" codefix (#24497)
* fixUnusedIdentifier: fix "Remove variable statement" codefix

* Add test for a single "Remove variable statement" codefix in a file
2018-05-30 14:51:08 -07:00
Nathan Shively-Sanders cdfa63aa40
Fix exported type resolution in commonjs (#24495)
* Fix resolution of exported types in commonjs

It is fine to resolve the types of exported classes in ES6:

```js
export class C {
}
var c = new C()
```

But not for commonjs exported classes:

```js
module.exports.C = class {
}
var c = new C() // should error
```

Fixes #24492

* All jsdoc type aliases are available locally in commonjs modules

* Check that location isSourceFile before commonJsModuleIndicator
2018-05-30 14:12:38 -07:00
Andy 43bf039a94
Add refactor to convert namespace to named imports and back (#24469)
* Add refactor to convert namespace to named imports and back

* Add tests and comments

* Code review

* Handle shorthand property assignment and re-export

* Don't use forEachFreeIdentifier

* Fix rename after "."
2018-05-30 14:11:53 -07:00
Andy 77371679be
Support getting references even if quickInfo failed (#24476)
* Support getting references even if quickInfo failed

* Add test
2018-05-30 14:11:36 -07:00