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
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
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
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
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
Andrew Casey
26903552fe
Improve insertion position of extracted methods
...
Old: End of target scope
New: Before the first non-constructor function following the extracted
range in the target scope
2017-09-08 14:19:28 -07:00
Nathan Shively-Sanders
d4e3e19763
Merge pull request #18333 from Microsoft/fix-forEachChild-JSDocTypedefTag
...
Fix forEachChild jsdoc `@typedef` tag
2017-09-08 08:52:46 -07:00
Nathan Shively-Sanders
7aac67b9b4
Test: parsing of two-line @typedef jsdoc
2017-09-07 16:22:16 -07:00
Andy
2e02778960
When loading a module from node_modules, get packageId even in the loadModuleFromFile case ( #18185 )
...
* When loading a module from node_modules, get packageId even in the `loadModuleFromFile` case
* Support packageId for <reference types> too
2017-09-07 14:31:20 -07:00
Andy
ed4e2e6e3b
Ensure that emitter calls callbacks ( #18284 )
...
* Ensure that emitter calls calbacks
* Move new parameter to end of parameters
* Fix for ConditionalExpression
* Make suggested changes to emitter
* Fix parameter ordering
* Respond to minor comments
* Remove potentially expensive assertion
* More emitter cleanup
2017-09-07 14:30:19 -07:00
Nathan Shively-Sanders
2bc9ecb4fd
Merge pull request #18296 from Microsoft/disable-lookahead-isStartOfParameter
...
Disable isStartOfType's lookahead when called from isStartOfParameter
2017-09-07 13:57:28 -07:00
Nathan Shively-Sanders
397ff84f1a
Merge pull request #18317 from Microsoft/object-literal-enum-property-names
...
Object literals computed property names allow literal-typed expressions
2017-09-07 13:56:10 -07:00
Wesley Wigham
6695255d86
Allow trailing newline to have fake position ( #18298 )
...
* Actually support baselining pretty in the harness
* Test case from 18216
* Use host newline in formatDiagnosticsWithColorAndContext
* Merge statements
2017-09-07 12:26:23 -07:00
Nathan Shively-Sanders
3c5b2a5e9d
Test Literal-typed computed property names in obj literals
2017-09-07 11:41:13 -07:00
Wesley Wigham
c1f2afd645
Add typedef declaration space, unify typedef name gathering ( #18172 )
...
* Add typedef declaration space, unify typedef name gathering, strengthen errorUnusedLocal
* Bonus round: make jsdoc presence way mroe typesafe
* Be exhaustive in nameForNamelessJSDocTypedef
* Remove nonrequired casts
* Replace more casts with guards
* Cannot be internal
* Debug.fail returns never, assert never no longer needs unreachable throw to satisfy checker
* Rename type
* Add replacement message as in 18287
2017-09-07 10:28:58 -07:00
Andy
be0633825c
Don't provide string literal completions for string enums ( #18288 )
...
* Don't provide string literal completions for string enums
* Rename test
2017-09-07 09:13:46 -07:00
Nathan Shively-Sanders
b84e6bc188
Merge pull request #18096 from Microsoft/fix-codefix-jsdoc-variablelike-decls
...
Fix the jsdoc codefix for VariableLike declarations
2017-09-07 08:11:19 -07:00
Andy
7541c705bf
Support navTo for special assignment kinds ( #18154 )
...
* Support navTo for special assignment kinds
* Return ScriptElementKind.unknown
2017-09-07 07:45:11 -07:00
Andy
b533b24686
extractMethod: Don't try to extract a single token ( #18090 )
...
* extractMethod: Don't try to extract a single token
* Update tests
2017-09-07 07:28:12 -07:00
Andy
b3c87aa919
Support find-all-references for default keyword ( #17992 )
...
* Support find-all-references for anonymous default exports
* Also handle re-exported default exports
* Add test for using `export =` with `--allowSyntheticDefaultExports`
2017-09-07 07:26:22 -07:00
Andy
23f793fc3e
findAllReferences: Handle root symbols of binding element property symbol ( #17738 )
2017-09-07 07:23:06 -07:00
Andy
0434fe797a
Get quickInfo from a contextual type if possible ( #18119 )
2017-09-07 07:22:39 -07:00
Andy
8c714c3651
Support special JS property assignments in doc comment templates ( #18193 )
2017-09-07 07:21:47 -07:00
Wesley Wigham
c3e090695e
Do not consider UMD alias symbols as visible within external modules ( #18049 )
...
* Do not consider UMD alias symbols as visible within external modules in the symbol writer
* Minimal repro
2017-09-06 22:07:30 -07:00
Wesley Wigham
72884b8f27
Emit comments on system export default expressions on the surrounding export call epxression instead ( #17970 )
2017-09-06 21:59:06 -07:00