Commit Graph
10946 Commits
Author SHA1 Message Date
Nathan Shively-Sanders 8f98c77217 Merge branch 'master' into js-object-literal-assignments-as-declarations 2018-02-15 10:28:25 -08:00
Nathan Shively-Sanders 0191b70d62 Further cleanup 2018-02-15 09:54:55 -08:00
Nathan Shively-Sanders d2b933e0d6 Cleanup in binder: rename and move 2018-02-15 09:36:48 -08:00
AndyandGitHub a133cec246 Fix bug: Interface type parameter merged with property is not unused (#21966) 2018-02-15 09:30:58 -08:00
AndyandGitHub 1b6aa1386f Handle non-preserved const enums in debug messages (#21945) 2018-02-15 09:21:33 -08:00
Nathan Shively-Sanders 4fdef85608 Naming and duplication cleanup 2018-02-15 09:13:06 -08:00
Nathan Shively-Sanders 0cadfcf6df Clean up js decl code in checker+utilities 2018-02-14 15:48:20 -08:00
AndyandGitHub 8518343dc8 Add isStringLiteralLike helper (#21953) 2018-02-14 13:25:04 -08:00
AndyandGitHub 2ee92948d8 Support @param tag on property declaration initializer (#21907)
* Support @param tag on property declaration initializer

* Update test

* Finish updating test
2018-02-14 10:12:38 -08:00
Nathan Shively-Sanders bad155f072 Clean up bindPropertyAssignment
The add-intermediate-container-symbols loop is still quite confusing,
but it's not as bad as before.
2018-02-13 16:50:53 -08:00
Nathan Shively-Sanders 76a9ac4434 Restrict declaration initializers too 2018-02-13 15:52:35 -08:00
Nathan Shively-Sanders 88c67fa777 Refactor binder and update baselines.
Also improve assert message in fourslash.
2018-02-13 15:44:15 -08:00
AndyandGitHub 8c2756fdf6 Support getting string literal completions based on a type argument constraint (#21168)
* Support getting string literal completions based on a type argument constraint

* Fix bug: look for require call before argument info

* Code review

* @sandersn code review

* Remove test cast

* Reduce completions.ts diff

* @weswigham review

* Remove getTypeArgumentConstraint's dependence on checkTypeArgumentConstraints

* Remove TODO
2018-02-13 15:18:26 -08:00
Nathan Shively-Sanders fc08e20da8 Correctly merge JS decls
Turns out merging was incorrect even for non-nested declarations, but
tests didn't catch it before.
2018-02-13 14:17:46 -08:00
Anders Hejlsberg a629acd8fd Allow +/- to prefix 'readonly' and '?' modifiers in mapped types 2018-02-12 16:20:49 -08:00
AndyandGitHub 74f01abfcf Clean up findPrecedingToken and avoid returning whitespace-only jsx text token (#21903) 2018-02-12 14:42:16 -08:00
Anders HejlsbergandGitHub d07523e9e5 Merge pull request #21866 from Microsoft/fixIndexedAccessWildcard
Fix indexed access issue with conditional types
2018-02-12 14:18:44 -08:00
Adrian LeonhardandMohamed Hegazy 6ab5d97a5d Changed "Duplicate Identifier" to "enum cannot be merged..." (#18579)
* Changed "Duplicate Identifier" to "enum can only be merged..."
when either declaration of the identifier is an enum.

Partial (?) fix for #529

Not sure if the new test is necessary, all the cases seem to have been covered by others tests.

* picked a nit
2018-02-12 13:38:08 -08:00
Ron BucktonandGitHub 2ff8fae5da Merge pull request #21900 from Microsoft/fix21620
Fix emit when binder treats exported const as namespace
2018-02-12 13:34:54 -08:00
Ron BucktonandGitHub 7a6a0673df Merge pull request #21897 from Microsoft/fix21626
Fix duplicate label in es2017 async function
2018-02-12 13:04:39 -08:00
Ron Buckton c84b7caa25 Fix emit when binder treats exported const as namespace 2018-02-12 13:02:47 -08:00
Ron BucktonandGitHub 641f787006 Merge pull request #21896 from Microsoft/fix21878
Revert BOM emit change
2018-02-12 12:31:12 -08:00
Ron Buckton 6736ced51d Fix duplicate label in es2017 async function 2018-02-12 12:30:29 -08:00
Ron Buckton ea8f5158c2 Revert BOM emit change 2018-02-12 12:02:34 -08:00
AndyandGitHub fca3db440c Give MethodDeclaration and MethodSignature parent types (#21892)
* Give MethodDeclaration and MethodSignature parent types
* And fix code that used MethodDeclaration for parameter that might be a MethodSignature

* Move type check back inside checkGrammarArrowFunction
2018-02-12 11:56:44 -08:00
AndyandGitHub 2d80253d09 Fix error message for implicit-any property in object literal with symbol key (#21883) 2018-02-12 11:09:50 -08:00
jack-williamsandMohamed Hegazy 67984c720e Fix #21848: Allows to mutate const with non-null assertion (#21873) 2018-02-12 10:57:59 -08:00
Anders Hejlsberg 0a35ad7aa5 Merge branch 'master' into fixIndexedAccessWildcard 2018-02-12 10:55:25 -08:00
Mohamed HegazyandGitHub 3fb481ff40 Multiple telemetry debug assert failure fixes (#21886)
* Use getAllowSyntheticDefaultImports to access `--allowSyntheticDefaultImport` value

* Fix #21788: Handel missing imporotClause case

* Fix #21789: Add a defensive check to forgottenThisPropertyAccess code fix for non-identifier locations

* Do not suggest prefix with `this` if the name we are looking for is diffrent from the errorLocation

* Fix #21796: Handel case of unknown module

* Add check to capture more info for #21800

* Fix #21807: check for symbol before looking up its flags

* Fix #21812: Gracefully fail if the token is not `this`.
2018-02-12 10:34:17 -08:00
Anders Hejlsberg 318e53cecb Merge branch 'master' into fixIndexedAccessWildcard
# Conflicts:
#	tests/baselines/reference/conditionalTypes1.errors.txt
#	tests/baselines/reference/conditionalTypes1.js
#	tests/baselines/reference/conditionalTypes1.symbols
#	tests/baselines/reference/conditionalTypes1.types
#	tests/cases/conformance/types/conditional/conditionalTypes1.ts
2018-02-10 17:29:06 -08:00
Anders Hejlsberg 9189354713 Wildcard instantiation of indexed access should be wildcard 2018-02-10 17:10:32 -08:00
Nathan Shively-Sanders 15554d7ea5 Fix bogus jsdoc error 2018-02-09 16:20:11 -08:00
Anders Hejlsberg fadf031088 Merge branch 'master' into fixStructuralIdentity
# Conflicts:
#	tests/baselines/reference/conditionalTypes1.errors.txt
#	tests/baselines/reference/conditionalTypes1.js
#	tests/baselines/reference/conditionalTypes1.symbols
#	tests/baselines/reference/conditionalTypes1.types
#	tests/cases/conformance/types/conditional/conditionalTypes1.ts
2018-02-09 16:16:02 -08:00
Nathan Shively-Sanders 61ea026b3c Allow window. prefix in default-assignment JS decl 2018-02-09 14:53:34 -08:00
Benjamin LichtmanandGitHub f989ef7261 Merge pull request #21004 from uniqueiniquity/updateATA
Enable typings cache entries to expire and be updated
2018-02-09 14:17:26 -08:00
AndyandGitHub 171b68c9e7 Add assertions for bad symbol declaration (#21837)
* Add assertions for bad symbol declaration

* Fix lint
2018-02-09 14:08:56 -08:00
Anders Hejlsberg 57351e898e Add higher order structural identity relations 2018-02-09 13:02:07 -08:00
Nathan Shively-Sanders 8ac94f5dec Support function/class in JS nested decls
This required fixing the predicates and the avoiding of contextual
typing loops. This is now done right, in
getContextualTypeOfBinaryExpression.

The predicates still need work.
2018-02-09 10:41:30 -08:00
Anders HejlsbergandGitHub 868a9ee117 Merge pull request #21782 from Microsoft/fixIdenticalConditionalTypes
Compatibility of identical conditional types
2018-02-08 17:38:31 -08:00
Anders Hejlsberg a9251723c7 Properly detect identical conditional types in caching logic 2018-02-08 17:10:25 -08:00
Nathan Shively-Sanders a09c2391a4 4-nested object-literal assignment works in JS 2018-02-08 16:07:22 -08:00
Nathan Shively-Sanders b0aebb4c1e Recursive object-literal-assignment declarations 2018-02-08 15:43:10 -08:00
AndyandGitHub e2178ecfab In getSymbolAtLocation, return undefined instead of unknownSymbol (#21774)
* In getSymbolAtLocation, return undefined instead of unknownSymbol

* Update check in completions to look for undefined instead of unknownSymbol
2018-02-08 14:35:21 -08:00
Nathan Shively-SandersandGitHub 37f15ccb41 Print deferred mapped symbols 1 level deep (#21311)
* Print deferred mapped symbols 1 level deep

Previously, deferred mapped symbols would not print their type at all;
it would always print as `any`. This differed from the older behaviour
that printed it forever if necessary. As a compromise, we now print
deferred mapped symbosl 1 level deep before giving up and printing
`any`. This should cover the most common uses of mapped types.

* Use context flags instead of a global
2018-02-08 13:35:00 -08:00
Nathan Shively-Sanders d0b08a24ec Refactor JS static property assignment binding
Less polymorphism, up-to-date generalised names and documentation.
2018-02-08 11:08:41 -08:00
Mohamed HegazyandGitHub 4150a463e2 Fix #20805 (#21755)
* Add `-dev` to version patch number in master

* Refactor to handel non-identifier tokens for UMD modules

* Be more graceful handeling non-identifier tokens in import fixes

* Fix bad merge

* Remove check for isIdentifier
2018-02-08 10:32:08 -08:00
AndyandGitHub 2a17825428 completions: Add assertions that symbols are defined (#21764)
* completions: Add assertions that symbols are defined

* Add assertion messages
2018-02-08 10:20:01 -08:00
Sheetal NandiandGitHub 353cfbddc6 Merge pull request #21750 from Microsoft/memberCompletionOfUnknownRightSideOfImport
Fix the member completion returned on right side of the import when it does not resolve to any symbol
2018-02-08 10:07:12 -08:00
AndyandGitHub 28c4871c99 hasSameKeys: Simplify and optimize for identical maps (#21763) 2018-02-08 09:45:43 -08:00
Mohamed HegazyandGitHub 384527aa09 Add -dev to version patch number in master (#21741) 2018-02-07 23:45:37 -08:00