Commit graph

28964 commits

Author SHA1 Message Date
Alexander T
a98798fad6 fix eslint errors 2019-08-27 09:32:36 +03:00
Alexander T
acafb502cd Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-08-27 09:30:31 +03:00
Andrew Branch
111b73acf9
Remove unnecessary tslint-ignore (#33091) 2019-08-26 15:34:44 -07:00
Wenlu Wang
9942c6052f add completion for promise context (#32101)
* add completion for promise context

* check insert text inside add symbol helper

* fix incorrect branch

* avoid completions with includeCompletionsWithInsertText perferences

* avoid useless parameter
2019-08-26 15:26:25 -07:00
Nathan Shively-Sanders
2a8ee1f3bf Merge branch 'master' into infer-from-usage/similarity-to-builtins 2019-08-26 13:21:08 -07:00
Nathan Shively-Sanders
e9073a863d
Improve names in infer-from-usage (#33090)
Basically, drop "Context" from all names, because it just indicates that
it's an implementation of the State monad.
2019-08-26 13:20:42 -07:00
Anders Hejlsberg
7753f7b7e6 Merge branch 'master' into recursiveTypeReferences
# Conflicts:
#	src/compiler/checker.ts
2019-08-26 15:35:33 -04:00
Armando Aguirre
5008c9cc3e
Merge pull request #33064 from armanio123/FixNavbarMultilineUnterminated
Added optional trailing slash to navigation bar regex
2019-08-26 12:06:36 -07:00
Nathan Shively-Sanders
3be6e75d6a Improve names in infer-from-usage
Basically, drop "Context" from all names, because it just indicates that
it's an implementation of the State monad.
2019-08-26 11:17:37 -07:00
Nathan Shively-Sanders
21f192367a
Fix infer from usage prop assignment (#33088)
* Add test case

* Fix infer from usage property assignment

Property assignment and shorthand property assignment were incorrectly
treated differently; both have ObjectLiteralExpression as a parent, but
the code previously assumed that property assignments had
ObjectLiteralExpression as parent.parent.

Also make fourslash directives case insensitive and less whitespace
sensitive.

* Add "incorrect 3-slash" error to fourslash parsing.
2019-08-26 10:42:17 -07:00
Andrew Branch
b4417da646
Fix fourslash server (#33063) 2019-08-26 08:46:41 -07:00
Anders Hejlsberg
dd47fffe8f Properly handle recursive array and tuple types in printback 2019-08-26 11:00:20 -04:00
Anders Hejlsberg
52a1a14331 Instantiate deferred type references like anonymous types 2019-08-26 07:08:37 -04:00
Anders Hejlsberg
b24fcd0bc5 Recursive tuple types + fix instantiation of recursive type references 2019-08-24 08:54:59 -04:00
Armando Aguirre
a0c29fe4e5 Added optional trailing slash regex 2019-08-23 15:42:03 -07:00
Armando Aguirre
25f609b3a2
Merge pull request #32672 from armanio123/FixNavbarMultiline
Fixed issue for navbar when having multi-line string literals
2019-08-23 15:02:25 -07:00
Andrew Casey
5b59cfb1c4
Merge pull request #33056 from amcasey/TripleSlashRestrictions
Make triple-slash comment classification more restrictive
2019-08-23 14:07:34 -07:00
Armando Aguirre
f76e3b59b2 Make trailing slash required on cleanText regex 2019-08-23 13:51:53 -07:00
Andrew Casey
e3690c3a07 Use the in operator 2019-08-23 13:10:32 -07:00
Andrew Casey
00d37268e8 Make triple-slash comment classification more restrictive
It was overly permissive and ended up making a mess of C#-style
comments:

`/// <summary>Text</summary>`

Now it checks the element name.  Attribute names remain unchecked.
2019-08-23 12:55:10 -07:00
Anders Hejlsberg
643351ca2d Support deferred resolution of type arguments in type references 2019-08-23 09:54:55 -04:00
Alexander T
049f5dacbf Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-08-23 14:18:27 +03:00
Jack Williams
ec39d41287 Change doc-string for Unreliable variance flag. (#33036) 2019-08-22 17:44:11 -07:00
Sheetal Nandi
6e091696fb Merge branch 'master' into referencesPrototypeSourceFile 2019-08-22 14:57:38 -07:00
Sheetal Nandi
a469fd82b9 Should not report that files are not part of config for files that are not going to be emitted 2019-08-22 13:37:36 -07:00
Sheetal Nandi
076dde4820 Test with --out as well 2019-08-22 13:00:37 -07:00
Nathan Shively-Sanders
4bddf55328
Fix prototype property type lookup (#33034)
* Fix constructor function type reference lookup

I knew I missed some code in the constructor-functions-as-classes PR.
This simplifies the type reference resolution code as well.

* Simplify and document js alias type resolution
2019-08-22 12:51:15 -07:00
Sheetal Nandi
c6e502be7d Verify config file errors 2019-08-22 11:26:26 -07:00
Alexander T
acc653a23f Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-08-22 09:46:22 +03:00
Sheetal Nandi
4c4ddf833d Merge branch 'master' into referencesPrototypeSourceFile 2019-08-21 15:42:36 -07:00
Nathan Shively-Sanders
3c42760765
Cache JS inferred class type symbol (#33010)
* Cache JS inferred class type symbol

Note that many sources merge into a single target, so the *source*
[links] is the one that caches the merged target.

The reason this is a problem is not that many sources merge into a
single target, but that both getTypeOfSymbol and getDeclaredTypeOfSymbol
end up calling mergeJSSymbols with the same [source,target] pair. The
merge should not happen twice.

* Remove more verbose debug assertion message

* Fix isJSConstructor check + update baselines

* inferClassSymbol cache now track multiple targets
2019-08-21 15:36:35 -07:00
Ryan Cavanaugh
016884d48c
Add assert comments in CodeFixes and Refactors (#33016)
* Add comments to assert calls

* Add comments to assert calls in codefixes

* So linty
2019-08-21 14:22:17 -07:00
csigs
f6155f89da LEGO: check in for master to temporary branch. (#33011) 2019-08-21 11:47:21 -07:00
Alexander T
0e7c9e8bce Update baselines 2019-08-21 10:14:23 +03:00
Alexander T
0d941d6943 Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-08-21 10:02:57 +03:00
Wesley Wigham
219a570a75
Fix discovery and execution of root-level tests in the parallel runner (#32980) 2019-08-20 17:18:31 -07:00
Andrew Branch
5d04250ea8
Improve “Add missing await” fix-all (#32922)
* Improve codeFixAll for add missing await

* Improve add missing await for initializers and fix-all

* Fix when only one side of a binary expression can have its initializer fixed
2019-08-20 16:53:28 -07:00
Wesley Wigham
a34ac8084c
Walk up parenthesized type nodes when looking for the type alias hosting a node (#32924) 2019-08-20 16:43:06 -07:00
Zixiang Li
24201cfe6e Add support for jsdoc properties with hyphen (#32631) 2019-08-20 14:49:40 -07:00
Sheetal Nandi
5ac450510a
Handle network style paths for watching (#32888)
* Refactoring

* take windows style root as test server host parameter

* Handle network style paths for watching
Fixes #32796
2019-08-20 10:52:56 -07:00
Alexander T
800248321f update eslint 2019-08-20 18:13:41 +03:00
Alexander T
42dd304bdd @typescript-eslint/quotes 2019-08-20 11:35:57 +03:00
Alexander T
41ede77c66 update typescript-eslint packages to 2.0.1-alpha.14 2019-08-20 11:09:49 +03:00
Alexander T
fea9e11174 Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-08-20 11:07:18 +03:00
Alexander T
97368b7080 remove .eslintrc from scripts 2019-08-20 10:57:23 +03:00
Ron Buckton
1bf218291f
Fix default behavior for transpileModule when fileName not provided (#32982) 2019-08-19 18:13:39 -07:00
xiaofa
61551bc574 change createMap<boolean> to createMap<true> 2019-08-20 06:17:11 +08:00
Nathan Shively-Sanders
6ca9d04b60
Constructor functions as classes (#32944)
* Initial implementation

The original test passes but I haven't run any other tests yet, so I
assume the world is now broken.

* Append constructor function construct sigs

Instead of overwriting them

* Grab bag of improvements.

1. Mark @class-tagged functions with Class too.
2. Only gather local type parameters of constructor functions.
3. Remove getJSClassType calls with getDeclaredTypeOfSymbol.
4. Add a couple more failing tests.

getDeclaredTypeOfClassOrInterface now needs to understand prototype
assignment. That's next, I think.

* Prototype assignments work now

1. Binder marks prototype assignments as Class now.
2. Checker merges prototype assignments using the same merge code as for
functions and their declarations. No more intersections.

Many fewer failing tests now.

* Mark prototype-property assignments as Class

Even if there are no this-property assignments in them. (Then why are
you using a class?).

* Simplify getJSClassType, remove calls to its guts

It's probably not needed because now it's just a conditional call to
getDeclaredTypeOfSymbol, and I think most callers already know whether
they have a JS constructor function beforehand.

* isJSDocConstructor doesn't need to check prototype anymore

Because all the properties are merged during getDeclaredTypeOfSymbol.

* outer type parameter lookup follow prototype assignment

* this-type and -expression support in ctor funcs

Pretty cool!

* Fix remaining tests

* Fix minor lint

* Delete now-unused code

* Add class flag to nested class declarations

Also remove old TODOs
2019-08-19 14:12:53 -07:00
Wesley Wigham
fd1e22bbf1
Instantiate generic conditional infer source types in the context of the target conditional (#31545)
* Instantiate generic conditional infer source types in the context of the target conditional

* Add test case from #26627
2019-08-19 13:01:08 -07:00
rChaser53
d75de60548 Fix Cannot read property 'text' of undefined crash (#32734)
* Fix Cannot read property 'text' of undefined crash

* fix condition for tsx

* Rename and improve the method
2019-08-19 12:08:34 -07:00