Commit Graph

34031 Commits

Author SHA1 Message Date
Andrew Casey 9352a8bc11 Delete IoSessionOptions
Many of the operations were unused because the values were being
accessed directly from the enclosing scope.
2018-03-21 14:56:06 -07:00
Nathan Shively-Sanders de4a69cb72 In source files and blocks, bind function declarations before other statements (#22766)
* Add test case and temporarily disable inference

(Inference of class members from this-assignments inside a
prototype-assigned function.)

* Update baselines

* In blocks and source files, bind functions first

* Add tests from other bugs

* Remove temporary failsafe

* Update tests to restore intent and clean up errors

* Restore intent even better

* Restore intent even better x2

* Add missed baselines
2018-03-21 14:22:09 -07:00
Anders Hejlsberg ee546fb30f Merge pull request #22764 from Microsoft/fixInferTypeDeclarationFiles
Fix missing 'infer T' in declaration files
2018-03-21 14:17:51 -07:00
falsandtru 4c4f0e8e65 Fix Promise interfaces 2018-03-22 06:02:18 +09:00
Anders Hejlsberg 275311edd3 Accept new baselines 2018-03-21 13:35:26 -07:00
Anders Hejlsberg eb3fd150a7 Add regression test 2018-03-21 13:35:15 -07:00
Anders Hejlsberg 174f400d8d Accept new baselines 2018-03-21 13:31:40 -07:00
Anders Hejlsberg 9083f6cf18 Revise binder logic to correctly find 'infer T' containers 2018-03-21 13:23:58 -07:00
Anders Hejlsberg a75449cabc Revert strict containment check in checkInferType 2018-03-21 13:22:58 -07:00
Nathan Shively-Sanders c930895d80 Undo 'any' inference propagation (#22736)
* Undo 'any' inference propagation

Removing this only changes one test slightly, and fixes JQuery types,
which rely on the old method of inference.

* Add jquery regression test and update baselines

* Restore any inference propagation to wildcard only
2018-03-21 11:13:39 -07:00
Anders Hejlsberg 09da98b185 Accept new baselines 2018-03-21 10:03:57 -07:00
Anders Hejlsberg 4fef35cdd0 Add regression test 2018-03-21 10:03:48 -07:00
Anders Hejlsberg b2a517e314 Accept new baselines 2018-03-21 10:03:34 -07:00
Anders Hejlsberg fa8564fa9e Add test to verify errors on nested 'infer T' declarations 2018-03-21 10:03:07 -07:00
Anders Hejlsberg fbd50487a5 Properly generate 'infer T' declarations in typeToTypeNode 2018-03-21 10:01:30 -07:00
Anders Hejlsberg be4f2d9b08 Accept new baselines 2018-03-21 06:48:22 -07:00
Anders Hejlsberg c94d28dbc8 Add test 2018-03-21 06:47:57 -07:00
csigs 6a86534d81 LEGO: Merge pull request 22754
LEGO: Merge pull request 22754
2018-03-20 21:10:44 -07:00
csigs cda4b13d3f LEGO: check in for master to temporary branch. 2018-03-21 04:10:22 +00:00
csigs f526340d73 LEGO: Merge pull request 22745
LEGO: Merge pull request 22745
2018-03-20 15:11:10 -07:00
csigs b1c9a8e9dd LEGO: check in for master to temporary branch. 2018-03-20 22:10:51 +00:00
Anders Hejlsberg 420e58c444 Implicit constraints in non-distributive '[T] extends [U] ? X : Y' types 2018-03-20 14:08:05 -07:00
Andy cc3921323c Support services settings (#22236)
* Support services settings

* Code review

* More review

* Use different names for Options and GetCompletionsAtPositionOptions (todo: come up with better names)

* More renames

* More renaming

* Support quote style in importFixes

* Add `importModuleSpecifierPreference` option

* Support quote style for `throw new Error('Method not implemented.')` (#18169)

* options -> preferences
2018-03-20 13:07:59 -07:00
Andy 9ee5167030 Evaluate isPrototypePropertyAssignment lazily (#22728) 2018-03-20 12:33:30 -07:00
Sheetal Nandi 020f046696 Fix when program module resolution in watch mode when node_modules folder itself gets the rename event
Fixes #22712
2018-03-20 12:10:13 -07:00
Nathan Shively-Sanders 1074819be3 Js constructor function fixes (#22721)
* Do not add undefined for this assignments in functions

* Test:constructor functions with --strict

* First draft -- works, but needs a stricter check added

* Update baselines

* Make undefined-skip stricter and more efficient

Symbol-based now instead of syntactic

* Exclude prototype function assignments

* Add explanatory comment
2018-03-20 11:24:09 -07:00
Nathan Shively-Sanders ab8233c5d3 Two JSdoc parsing fixes (#22705)
* Correctly parse JSDoc type *=

* Allow `markdown` quoted param names in JSDoc

* Add tests and update baselines

* Get correct span for the type '*'

* Fix whitespace lint

* Add unbracketed type test
2018-03-20 09:23:08 -07:00
csigs d3b55f40e5 LEGO: Merge pull request 22719
LEGO: Merge pull request 22719
2018-03-20 09:10:48 -07:00
csigs bc3d6a4b3c LEGO: check in for master to temporary branch. 2018-03-20 16:10:28 +00:00
csigs 8b9d6dff52 LEGO: Merge pull request 22714
LEGO: Merge pull request 22714
2018-03-20 03:10:51 -07:00
csigs d39d21ec1b LEGO: check in for master to temporary branch. 2018-03-20 10:10:29 +00:00
csigs 6aa0afb87d LEGO: Merge pull request 22711
LEGO: Merge pull request 22711
2018-03-19 21:10:41 -07:00
csigs 7141522368 LEGO: check in for master to temporary branch. 2018-03-20 04:10:21 +00:00
Wesley Wigham eaabf920eb Combine keyof T inferences (#22525)
* Combine keyof T inferences

* Extract covariant inference derivation into function

* Test:keyof inference lower priority than return inference

for #22376

* Update 'expected' comment in keyofInferenceLowerPriorityThanReturn

* Update comment in test too, not just baselines

* Fix typo

* Move tests
2018-03-19 16:56:51 -07:00
Anders Hejlsberg 56710dd537 Accept new baselines 2018-03-19 16:29:11 -07:00
Anders Hejlsberg 16f571b026 Add tests 2018-03-19 16:29:00 -07:00
Anders Hejlsberg 8cb9ac9ab0 Accept new baselines 2018-03-19 16:28:50 -07:00
Anders Hejlsberg de1ebb4a84 Add constraints to indexed access types in conditional types 2018-03-19 16:11:36 -07:00
Nathan Shively-Sanders b56093f3ac Fix type when annotated with a JSDoc function type (#22692)
* Fix type when annotated with a JSDoc function type

Previously,
1. A variable annotated with a JSDoc function type would not require all
its parameters to be provided. This should only apply to functions
without a type annotation.
2. A parameter in a function with a JSDoc function type annotation would
still have the type 'any'.
3. Two `var` declarations in a Typescript and Javascript file,
respectively, would error even when they had identical function types.

* Update baselines and add constructor test

* Handle ConstructorType too

* Add test:method sig inside literal type

* Contextually type parameters by parent sig's JSDoc

Instead of a syntactic check in getJSDocTag

* Remove redundant check:isUntypedSignatureInJSFile

* Positive check for value signatures

Instead of excluding type signatures piecemeal.
2018-03-19 16:00:45 -07:00
csigs d88041fc0a LEGO: Merge pull request 22703
LEGO: Merge pull request 22703
2018-03-19 15:12:07 -07:00
csigs 995c7db8cd LEGO: check in for master to temporary branch. 2018-03-19 22:11:42 +00:00
Andy 737859e3c1 Put simpler condition in front of more complex one (#22696) 2018-03-19 13:35:19 -07:00
Andy 096b2b0712 Use isFunctionLike instead of switch (#22698) 2018-03-19 13:35:01 -07:00
Andy 0df92a1ba1 Simplify isImplementation (#22660) 2018-03-19 11:59:22 -07:00
Andy c7215a181c findAllRefs: give entry for union its own definition (#22694) 2018-03-19 11:58:20 -07:00
AdityaDaflapurkar 76fefddcaa Remove type assertion in sum function (#22670) 2018-03-19 08:19:24 -07:00
Anders Hejlsberg c48662c891 Merge pull request #22675 from Microsoft/fixWideningInDestructuring
Fix widening in destructuring
2018-03-17 15:21:16 -07:00
Anders Hejlsberg b7047e852b Accept new baselines 2018-03-17 12:23:54 -07:00
Anders Hejlsberg 979bda484c Add regression test 2018-03-17 12:23:45 -07:00
Anders Hejlsberg eab5b9f20c Accept new baselines 2018-03-17 12:23:05 -07:00