Andy
cf53743bd6
In isInPropertyInitializer, don't bail out at a PropertyAssignment ( #18449 )
2017-09-14 07:59:53 -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
Andrew Casey
40e459117a
Merge pull request #18343 from amcasey/InsertionPosition
...
Improve insertion position of extracted methods
2017-09-12 16:48:45 -07:00
Wesley Wigham
403f585622
enclosingDeclaration can be undefined within getAccessibleSymbolChain ( #18400 )
2017-09-12 10:43:24 -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
2fdb5b8659
assignContextualParameterTypes handles arguments object
...
Previously, it would crash — the arguments object is a transient
symbol with no declaration, and `getEffectiveTypeAnnotationNode`
does not accept `undefined`.
2017-09-11 11:16:01 -07:00
Anders Hejlsberg
63d746bc4c
Higher order inference for mapped, index and lookup types
2017-09-11 10:24:27 -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
f40f0db676
Preserve intersections on the source side in type inference
2017-09-09 12:43:39 -07:00
Andy
e51e91dd2c
Change wording of scope description ( #18342 )
2017-09-09 05:52:52 -07:00
Anders Hejlsberg
c671c3ac06
Only track flow analysis stack depth
2017-09-08 15:51:11 -07:00
Andrew Casey
e77425f984
Delete staticAssertNever in favor of assertTypeIsNever
2017-09-08 14:36:21 -07:00
Anders Hejlsberg
ecea2871bd
Merge branch 'master' into fixControlFlowStackOverflow
2017-09-08 14:26:13 -07:00
Anders Hejlsberg
25268ce368
Separate counters for stack depth and visited flow nodes
2017-09-08 14:24:32 -07:00
Andy
409d6597eb
Add never helper function ( #18287 )
...
* Add `never` helper function
* Move to Debug.assertNever, keep old messages
2017-09-08 14:22:44 -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
Anders Hejlsberg
37d320d0c8
Rename visitedFlowXXX to sharedFlowXXX
2017-09-08 14:19:18 -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
cab05ddd3f
Inline variable to aid control flow
2017-09-08 08:33:17 -07:00
Andy
4ee7d3aeb2
Remove unnecessary check in emitNodeList ( #18327 )
2017-09-08 07:18:37 -07:00
Anders Hejlsberg
9eecf8ca56
Report error on first token of excessively large function or module body
2017-09-08 06:35:14 -07:00
Nathan Shively-Sanders
fb5e8c6110
Fix forEachChild's visit of JSDocTypedefTag
...
Also remove JSDocTypeLiteral.jsdocTypeTag, which made no sense since it
was only useful when storing information for its parent `@typedef` tag.
2017-09-07 16:37:13 -07:00
Wesley Wigham
27f9cdb1ae
Explicitly avoid canonicalizing paths during configuration handling ( #18316 )
...
* Explicitly avoid canonicalizing paths during configuration handling
* Extract usage of identity in commandLineParser into single function, use identity in checker
2017-09-07 15:54:24 -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
Anders Hejlsberg
8c64937888
Merge pull request #18153 from Microsoft/optimizeArrays
...
Optimize array operations to reduce memory footprint
2017-09-07 22:26:48 +01: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
Andy
508cde0ea1
Document assignment to aliasSymbol in getUnionTypeFromSortedList ( #17434 )
...
* Document assignment to aliasSymbol in getUnionTypeFromSortedList
* Update wording
2017-09-07 12:39:13 -07:00
Daniel Rosenwasser
448d75c08f
Merge pull request #17675 from HerringtonDarkholme/master
...
fix #16567 : better coloring on light theme terminal
2017-09-07 12:33:12 -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
ac58751b62
Object literals computed property names allow literal-typed expressions
2017-09-07 11:30:38 -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
Klaus Meinhardt
69933bd4d1
expose isExternalModuleNameRelative and moduleHasNonRelativeName ( #17971 )
...
* expose isExternalModuleNameRelative and moduleHasNonRelativeName
Fixes : #17890
* only expose isExternalModuleNameRelative
2017-09-07 09:46:58 -07:00
Mohamed Hegazy
c82881f36e
Fix build break
2017-09-07 09:36:31 -07:00
Klaus Meinhardt
a8dfdf2fa1
Add and fix some AST Node parent types ( #18200 )
2017-09-07 09:22:26 -07:00
Andy
193f4be355
Enable interface-over-type-literal lint rule ( #17733 )
2017-09-07 09:14:59 -07:00
Nathan Shively-Sanders
90d9f3d4ba
Rename isStartOfType parameter used by isStartOfParameter
2017-09-07 09:07:59 -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
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
0434fe797a
Get quickInfo from a contextual type if possible ( #18119 )
2017-09-07 07:22:39 -07:00
Wesley Wigham
72cbc12c9a
Allow undefined/null to override all parameters ( #18058 )
2017-09-06 22:08:42 -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
Wesley Wigham
ed61d2d803
Emit updated export declarations when transformed from export * ( #18017 )
...
* Failing test for missing transform output
* dont elide all export stars
* Remove comment from test
* Refuse to perform ellision on transformed nodes
2017-09-06 21:58:04 -07:00
Wesley Wigham
5c779b1edb
Allow singleline string writer to be recursively used ( #18297 )
...
* Allow singleline string writer to be recursively used
* Add unit test exposing issue
* Fix lints
2017-09-06 21:56:16 -07:00