6474 Commits

Author SHA1 Message Date
Benjamin Lichtman
83f2401523 Merge pull request #17954 from uniqueiniquity/regions
Add support for custom outlining regions
2017-09-15 17:04:32 -07:00
Nathan Shively-Sanders
088da79079 Merge pull request #18451 from Microsoft/allow-booleans-in-spreads
Allow `falsy | T` spreads for falsy primitives
2017-09-15 16:24:16 -07:00
Nathan Shively-Sanders
cb8d9d6143 Revert spread-falsy-union/fix spread of primitive
Turns out partialising falsy unions wasn't needed -- I was just
returning the wrong thing when spreading primitives.
2017-09-15 16:11:41 -07:00
uniqueiniquity
3dfeb2d0f4 Combine and simplify regex 2017-09-15 15:52:08 -07:00
Andrew Casey
abd4f58824 Restore single-token tests 2017-09-15 10:45:15 -07:00
Nathan Shively-Sanders
0197357e31 Remove mistakenly added test file
Intended for a different PR
2017-09-15 10:28:13 -07:00
Nathan Shively-Sanders
7497d4cb3a Merge branch 'master' into allow-booleans-in-spreads 2017-09-15 10:26:57 -07:00
Nathan Shively-Sanders
f97d5fa11d Update tests with improved spread-falsy-union rules 2017-09-15 10:06:58 -07:00
Vakhurin Sergey
95594e3ef3 Fixed formatting for multiline initialization of object and class members (#18494) 2017-09-15 09:12:35 -07:00
Andy
c522f379b2 Update assertion: symbol in union type may be a Function (#18483) 2017-09-14 15:02:32 -07:00
Wesley Wigham
e1ede37ec7 Add name to amd definition in umd module if present (#18479) 2017-09-14 14:41:56 -07:00
Andy
0747b33038 Fixes to emit / format for codeFix (#18484) 2017-09-14 14:30:50 -07:00
Armando Aguirre
21bbdd33c5 Merge pull request #17415 from armanio123/FixRenameInDefaultLibrary
Excluded the default library from rename service.
2017-09-14 14:04:46 -07:00
Andy
66abcb9166 Handle undefined symbol.declarations in cloneSymbol (#18474) 2017-09-14 13:03:12 -07:00
Nathan Shively-Sanders
b934c8bcbd Merge pull request #18417 from Microsoft/fail-spec-lambda-parsing-on-parameter-initialiser-missing-=
Fail speculative parsing of arrow functions when their parameter initialisers are missing a =
2017-09-14 13:01:51 -07:00
Andy
89eb06e475 For completions of union, exclude types with methods (#18124)
For completions of union, exclude arrays
2017-09-14 12:37:38 -07:00
Andy
d1e2242ee4 Allow to access exports from inside a commonjs module (#17745)
* Allow to access `exports` from inside a commonjs module

* Don't contextually type `this` in `exports.f = function() { ... }`

* Update test
2017-09-14 12:36:55 -07:00
Armando Aguirre
b03fbaf313 Merge branch 'master' into FixRenameInDefaultLibrary 2017-09-14 12:01:31 -07:00
Andy
e91af7d30d Allow template string with no substitutions to be used as a string literal type (#18452) 2017-09-14 11:19:54 -07:00
Nathan Shively-Sanders
18653a5c5d Use removeDefinitelyFalsyTypes for building partial type 2017-09-14 11:18:48 -07:00
Wesley Wigham
76eab54ab7 Add error for using generalized expressions with export assignments in ambient contexts (#18444) 2017-09-14 11:11:54 -07:00
Anders Hejlsberg
2077835ff7 Merge pull request #18438 from Microsoft/unionIntersectionUnit
Remove empty intersection types in unit types
2017-09-14 18:44:02 +01:00
Nathan Shively-Sanders
274faa4e9c Merge branch 'master' into allow-booleans-in-spreads 2017-09-14 10:30:58 -07:00
Andy
d96dfeb708 Don't normalize whitespace in fourslash tests (#18447)
* Don't normalize whitespace in fourslash tests

* Only render whitespace when the diff is text-only
2017-09-14 08:23:50 -07:00
Andy
cf53743bd6 In isInPropertyInitializer, don't bail out at a PropertyAssignment (#18449) 2017-09-14 07:59:53 -07:00
Nathan Shively-Sanders
d2e2faad5c Update tests and baselines 2017-09-13 15:13:34 -07:00
Nathan Shively-Sanders
d951c14052 Allow all possibly falsy types in spreads
And update tests to reflect that
2017-09-13 14:56:15 -07:00
Nathan Shively-Sanders
9cddd1aca2 Update spread tests for booleans in spread types 2017-09-13 14:06:15 -07:00
Anders Hejlsberg
0ac942f7ab Update test 2017-09-13 11:52:21 -07:00
Nathan Shively-Sanders
d1efefec9c Merge branch 'master' into fail-spec-lambda-parsing-on-parameter-initialiser-missing-= 2017-09-13 09:30:57 -07:00
Andy
2a70bf5158 Don't count a write-only reference as a use (#17752)
* Don't count a write-only reference as a use

* Split isWriteAccess to isWriteOnlyAccess and isReadOnlyAccess

* Update "unusedParameterUsedInTypeOf" to use "b"

* Update diagnostic messages: "is never used" -> "its value is never read"

* Use a WriteKind enum

* Rename enum and move documentation to enum members
2017-09-13 09:02:33 -07:00
Andy
c3199c7772 extractMethod: Support renameLocation (#18050)
* extractMethod: Support renameLocation

* Add tslint disable

* Properly analyze list of changes to always get a correct rename location

* Update test

* Ensure name is really unique

* Improvements to test code

* Respond to PR comments
2017-09-13 09:02:10 -07:00
Anders Hejlsberg
78f4cbe53c Add tests 2017-09-13 06:37:59 -07:00
Andrew Casey
40e459117a Merge pull request #18343 from amcasey/InsertionPosition
Improve insertion position of extracted methods
2017-09-12 16:48:45 -07:00
Nathan Shively-Sanders
d8ace9ddfb Don't parse param init when = is required but missing
Makes another test case pass that was taking exponential time to parse,
because now it notices that the = is not present and doesn't even try to
parse the initialiser expression.
2017-09-12 14:41:51 -07:00
Nathan Shively-Sanders
4c4316da72 Fail spec parsing lambdas on parameter missing a =
Fail speculative parsing of arrow function expressions whenever it has a
parameter with an initialiser that is missing '='. Ordinarily this is
allowed for better error recovery in the language service, but for
speculative parsing, the errors can compound. When the initialiser is an
error, and when the '=>' is missing (which is also allowed), what is
putatively an arrow function may actually be something else.

For example, `(a / 8) + function ()
{ }` is currently parsed as if someone had intended to write

`(a = /8)+function()/) => { }` but they forgot the `=` of the
initialiser, the `=>` of the lambda, forgot to close the regular
expression, and mistakenly inserted a newline right after the regular
expression.
2017-09-12 14:01:49 -07:00
Nathan Shively-Sanders
2fbc2259a1 Merge pull request #18392 from Microsoft/fix-contextually-typing-arguments-object
Fix contextually typing arguments object
2017-09-11 16:22:17 -07:00
Anders Hejlsberg
d90814bc57 Merge pull request #18391 from Microsoft/fixMappedTypeInference
Inference for higher order mapped, index and lookup types
2017-09-11 20:47:38 +01:00
Anders Hejlsberg
d65a3e1c67 Merge pull request #18363 from Microsoft/fixIntersectionInference
Fix intersection inference
2017-09-11 20:46:43 +01:00
Anders Hejlsberg
1b49c8f0a8 Merge pull request #18246 from Microsoft/fixControlFlowStackOverflow
Error on excessively large control flow graphs
2017-09-11 20:45:22 +01:00
Herrington Darkholme
29d5e4dadd fix #18225, fix error message on abstract class instance (#18368)
* fix #18225, fix error message on abstract class instance

abstract class check should be inside constructor call

* add new test and accept baseline
2017-09-11 11:21:35 -07:00
Nathan Shively-Sanders
4e04a740f8 Test:contextual typing of arguments obj in JS files 2017-09-11 11:17:14 -07:00
Anders Hejlsberg
0823eba8a3 Add tests 2017-09-11 10:38:46 -07:00
Wesley Wigham
eb80799ef0 Care about esnext where we look for es2015 (#18331)
* Care about esnext where we look for es2015

* Update diagnostic message to be more agnostic
2017-09-09 16:30:06 -07:00
Anders Hejlsberg
9871c04e54 Add tests 2017-09-09 13:06:28 -07:00
Anders Hejlsberg
c6af0015a3 Fix fourslash tests 2017-09-09 12:52:10 -07:00
Andy
e51e91dd2c Change wording of scope description (#18342) 2017-09-09 05:52:52 -07:00
Andy
018c645913 In import code fix, don't treat a re-export as an import (#18341) 2017-09-09 05:52:08 -07:00
Anders Hejlsberg
4ba50aadb0 Update test 2017-09-08 15:51:25 -07:00
Anders Hejlsberg
ecea2871bd Merge branch 'master' into fixControlFlowStackOverflow 2017-09-08 14:26:13 -07:00