9824 Commits

Author SHA1 Message Date
Andy
38905f46ce Minor cleanup to symbolWalker (#18549)
* Minor cleanup to symbolWalker

* Undo inlining
2017-09-22 14:07:07 -07:00
Filipe Silva
d0fd964b69 Fix getSourceFile return type (#18689) 2017-09-22 11:54:20 -07:00
Andy
2399bac377 Make it a parse error for an @type jsdoc tag to not include a type (#18664)
* Make it a parse error for an `@type` jsdoc tag to not include a type

* Rename parameter
2017-09-22 10:45:43 -07:00
Andy
72c8b804da Use JSDoc @type tag type cast as a contextual type (#18690)
* Use JSDoc `@type` tag type cast as a contextual type

* Suggested changes
2017-09-22 10:42:02 -07:00
Andy
f7d8081ab3 Unify duplicate getNameOfSymbol functions (#18618) 2017-09-22 09:39:22 -07:00
Andy
7e002aeb7b Avoid calling indexOf when checking array element types (#18619)
* Avoid calling `indexOf` when checking array element types

* Add 'indexOfNode' and use it in cases which may handle long lists. (#18635)

* Fix bug where contextual type was not reused if undefined
2017-09-22 08:49:56 -07:00
Andy
1a383ec290 Remove unnecessary "@internal" (#18665) 2017-09-22 07:09:29 -07:00
Andy
30839378ac Remove unnecessary 'tryParse' (#18663) 2017-09-21 14:42:13 -07:00
Ron Buckton
d9951cbb8e Merge pull request #17919 from henrymercer/fix-empty-object-property-access
Fix property access on an object literal
2017-09-20 19:06:04 -07:00
Ryan Cavanaugh
b9b112738c Merge pull request #18456 from RyanCavanaugh/pluginWork
Properly report external filenames
2017-09-20 10:51:54 -07:00
Andy
d5e7227dbb Look at correct 'package.json' location for a scoped package (#18580)
* Look at correct 'package.json' location for a scoped package

* Update baseline
2017-09-20 08:15:24 -07:00
Magnus Kulke
b549e26665 Consider underscore for type parameters in unused-local checks (#18539)
* Consider underscore for type parameters in unused-local errors.

* Addressed review comments.
2017-09-19 16:57:26 -07:00
Anders Hejlsberg
8f4a2c184c Merge pull request #18457 from Microsoft/tsIgnoreInTSFiles
Suppress errors in .ts files using '// @ts-ignore' comments
2017-09-20 00:56:56 +01:00
Henry Mercer
a8810925ac Merge branch 'master' into fix-empty-object-property-access 2017-09-20 00:29:18 +01:00
Henry Mercer
54edde8892 Fix property access bug instead by wrapping entire access in brackets
Modify parenthesizeExpressionForExpressionStatement to add brackets around an expression statement in which the left-most expression is an object literal.
2017-09-19 23:58:03 +01:00
Andy
0ae42ea3de Allow relative imports of '.js' files when --noImplicitAny is disabled (#18489)
* Allow relative imports of '.js' files when `--noImplicitAny` is disabled

* Update baselines, and don't ignore a diagnostic about missing JSX
2017-09-19 12:42:29 -07:00
Nathan Shively-Sanders
339a7e5f63 Merge branch 'master' into make-jsdoc-getters-public 2017-09-19 11:20:06 -07:00
Armando Aguirre
1989b70374 Merge pull request #18192 from armanio123/FixExpressionExpectedAtEOF
Added logic to check for EOF when creating a missing node.
2017-09-19 10:13:20 -07:00
Nathan Shively-Sanders
cc678a5184 Merge pull request #18440 from Microsoft/fix-javascript-signature-instantiation
Fix javascript signature instantiation
2017-09-19 08:43:16 -07:00
Ivan Enderlin
fe0ba0c743 fix: Add missing opening quote (#18534)
And thank you for this tool!
2017-09-18 11:21:33 -07:00
Andy
79e12eb48b Ensure that emitter calls callbacks for empty blocks (#18547) 2017-09-18 10:05:44 -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
Nathan Shively-Sanders
7497d4cb3a Merge branch 'master' into allow-booleans-in-spreads 2017-09-15 10:26:57 -07:00
Nathan Shively-Sanders
9c6f65175b Refactor truthy-spread-union creation for performance
Only create properties once, only if needed, and don't create an
intermediate anonymous type. The code is also inlined with the rest of
`getSpreadType`.
2017-09-15 10:05:14 -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
Andy
3062c6309b Simplify some code in getSymbolAtLocation (#18470) 2017-09-14 12:36:29 -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
cf53743bd6 In isInPropertyInitializer, don't bail out at a PropertyAssignment (#18449) 2017-09-14 07:59:53 -07:00
Anders Hejlsberg
f28d80d7d4 Support '// @ts-ignore' comments in .ts files 2017-09-13 15:40:10 -07:00
Ryan Cavanaugh
3bd4c4f847 Properly report external filenames 2017-09-13 15:19:07 -07:00
Nathan Shively-Sanders
fbdb14833a Improve naming of getPartialTypeFromFalsyUnion 2017-09-13 14:58:35 -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
60f1d4573d Allow booleans in spread types
Special-case types produced by `bool && expr` with the type `false | T`.
This spreads `Partial<T>` instead of `false | T`.
2017-09-13 14:04:14 -07:00
Anders Hejlsberg
c64beb90df Remove intersections of object and nullable types from union types 2017-09-13 11:52:10 -07:00
Nathan Shively-Sanders
a1d1a2219b Make isJavascript parameters required
This is a bit wordy, but will probably prevent bugs similar to #18254 in
the future.
2017-09-13 10:44:11 -07:00
Nathan Shively-Sanders
5d51a42030 Use createMissingNode for sentinel node 2017-09-13 10:26:11 -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
Nathan Shively-Sanders
d762f55199 Fix:Instantiate javascript constructor signatures
getSignatureInstantation takes a parameter that tells whether the
signature comes from Javascript and therefore is allowed to pass fewer
than the required number of type arguments. (Defaults are chosen if this
is the case.)

Previously, getInstantiatedConstructorsForTypeArguments forgot to
provide this argument, and constructors with insufficient type arguments
would cause a crash because getSignatureInstantiation would not know to
fill in the missing type arguments.
2017-09-13 09:23: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