3992 Commits

Author SHA1 Message Date
Ron Buckton
203dab4412 Added additional es5 conformance tests, better emit for functions returning global promise, pass this to __generator 2016-06-27 17:12:24 -07:00
Ron Buckton
0c647c3d14 Added es5 conformance tests for awaiting a call 2016-06-27 15:34:15 -07:00
Ron Buckton
48a9562e41 Added es5 conformance tests for async function declarations. Add ability to treat some statements as if they were prologue directives. 2016-06-27 15:26:33 -07:00
Ron Buckton
5b2e11c5d0 Added es5 conformance tests for await in binary. 2016-06-27 14:08:36 -07:00
Ron Buckton
393ee28fb0 Move 'use strict' directive out of generator for async function. 2016-06-27 13:48:47 -07:00
Ron Buckton
c11b5600b2 es6 test conformance cleanup 2016-06-27 13:12:11 -07:00
Ron Buckton
278a350add Add support for external helpers module, cleanup, and accept new baselines. 2016-06-15 13:49:32 -07:00
Ron Buckton
4eb2a82dca Merge branch 'transforms' into transforms-generators 2016-06-15 11:41:21 -07:00
Ron Buckton
d5f5d927af Merge branch 'transforms' into transforms-importHelpers 2016-06-14 18:23:51 -07:00
Ron Buckton
a096b87c34 Updated baselines. 2016-06-14 18:23:31 -07:00
Ron Buckton
9073572843 Merge branch 'transforms' into transforms-generators 2016-06-14 18:04:48 -07:00
Ron Buckton
ea61f2b32b Added tests and fixed related emit issues. 2016-06-14 17:59:44 -07:00
Yui
171ab06cf0 [Transforms] Merge master 06/14/2016 (#9169)
* Remove check narrowing only certain types, add test showing issues with this

* string literal case test

* Reconcile fix with CFA work

* Defaultable -> NotNarrowable to align with use

* Missed a defaultable in comments

* Add test for narrowing to unions of string literals

* Rewrite isInStringLiteral to accomodate for unterminated strings

* Refactor signatureHelp to expose helper functions

* Add support for completion in string literals

* Remove unused check

* Use const instead of let

* Fix error

* Formatting changes

* Use shorthand properties

* Add failing test for #8738

* Sort baseline reference identifier by name

* Detects assignment to internal module export clause, fixes #8738

* add SharedArrayBuffer

fix

* Factor out assignment op check

* Add test for composite assignment

* Factor out the behaviour and handles x++ and ++x

* Handles ES3 default as identifier name

* Fix missing else statement

* isNameOfExportedDeclarationInNonES6Module

* Reorder options alphabetically

* Mark diagnostics, and skipDefaultLibCheck as internal

* Allow an import of "foo.js" to be matched by a file "foo.ts"

* Improve loadModuleFromFile code

* Respond to PR comments

* Respond to more PR comments

* Fix test

* Actually merge from master

* Revert to old tryLoad implementation

* Run fixupParentReferences when parsing isolated jsDocComment

* initial revision of unit test support for project system in tsserver

* Allow wildcard ("*") patterns in ambient module declarations

* Add non-widening forms of null and undefined

* Create separate control flows for property declarations with initializers

* Add regression test

* Allow trailing commas in function parameter and argument lists

* Add tests

* Remove unused variable

* Add null check and CR feedback

* Support shorthand ambient module declarations

* Revert "Merge pull request #7235 from weswigham/narrow-all-types"

This reverts commit ef0f6c8fe4f94a7e294cfe42d7025c9dca6535d5, reversing
changes made to 9f087cb62ade7a879e23c229df752fc8f87d679c.

* reuse the fixupParentReferences function

* Improve typing of && operator with --strictNullChecks

* Add test

* Respond to PR comments

* Respond to PR comments

* Add merging tests

* Use a function `stringify` to simplify calls to `JSON.stringify(xyz, undefined, 2)`

* Update tests

* Fix mistake

* Include indent in navigation bar protocol

Previously navbar01 test had indents when run in the browser but not when run from node. Now they run the same.

* Remove unnecessary restrictions in property access narrowing

* Fix fourslash test

* Add regression test

* Consider property declarations to be control flow containers

* Adding regression test

* Remove restriction on --target es5 and --module es6

* change type definition for Object.create

* Fix signature help

* Add "implicit any" warning for shorthand ambient modules

* Remove trailing whitespace

* Support using string values in enums for CompilerOptions in transpile methods

* Remove trailing whitespace in jakefile

* Make `jake runtests-browser` support test regexes with spaces

For example: `jake runtests-browser t="transpile .js files"` now works.

* Add another test

* factor out isJsxOrTsxExtension

* Move to a conformance test

* Revert "Revert "Merge pull request #7235 from weswigham/narrow-all-types""

This reverts commit fc3e040c5167868ed623612e8f33fb3beedf73b1.

* Use inclusive flag, as originally done, but include almost everything

* Add additional tests

* Respond to PR comments

* Fix typo

* add tests for tsserver project system

* Fix test

* Allow case comparison to undefined and null in strict null checking mode

* Remove incorrectly added tests

* check if moduleResolution when verifying that program can be reused

* more tests for module resolution change and exclude

* Fix linting issues

* Merge JSDoc of assignments from function expressions

* Allow nested assignments in type guards

* Add tests

* Improve order of parameter's merged jsdoc

* Force LF newlines for LKG builds/non debug builds
Fixes 6630

* Create intersection types in type guards for unrelated types

* Split commentsFunction test into expr/decl

And renumber.

* Remove TODO comments

* Accept new baselines

* Add tests

* Remove comments

* Fix test helper

* Recognize relative path using in outDir property (#9025)

* Recognize relative path using in outDir property

* Add projects tests

* Add project .json files

* Update baselines

* Add comments

* Add test case

The test passes in 1.8 and fails in master.

* Return trace when exception happens

* Remove Long-Done TODO

AFAIK, the harness sources have been concatenated into `run.js` for as long as I've known. This stops executing them twice (and in turn makes debugging tests much easier, since you no longer have to debug into eval'd code).

* Allow primitive type guards with typeof on right

Previously, only type guards of the form `typeof x === 'string'` were
allowed. Now you can write `'string' === typeof x`.

* Primitive type guards are now order independent

* Fix comments in tests

* Add handleing for classes

* Add more tests for target=es5 module=es6

* addExportToArgumentListKind

* Accept baseline

* Add more tests

* Adds progress indicators to the runtests-parallel build task.

* Fixed typo

* Fix comment

* Add test for out-of-range error

* Use proper method of not resolving alias

* Fix module loading error

(commandLineOptions_stringToEnum would be undefined if optionDeclarations wasn't loaded yet)

* Update tests

* Contextually type return statement in async function

* Remove stale files

* Undo change

* Improve perf

* Improve tests

* Fix sourcemaps for debugging tests

* Allow --sourceRoot with --inlineSources option
Fixes #8445

* this in parameter initializers resolves to class

Accept baselines now that the test passes.

* Add tests for more kinds of import/export

* Fix7334 Disallow async in functionExpression and ArrowFunction (#9062)

* Error when using async modifier in function-expression and arrow-function when target es5

* Add tests and baselines

* Resolve function-this in parameter initialisers when explicitly provided

* Allow null/undefined guard with null/undefined on left

Also add a test with baselines.

* Code review comments

* Update more diagnostic messages ES6->2015

Fix #8996 CC @mhegazy.

* Fixes an issue with runtests-parallel when global mocha is not installed.

* Update LKG

* Add tests

* fix baselines

* Salsa: get members of variables whose initialisers are functions

* Test adding members to JS variables whose initialisers are functions

* Recommend runtests-parallel in CONTRIBUTING

* Allow empty lists on command line

* Remove single-comma empty array form

* Remove trailing whitespace

* Implicit type inclusion changes

* Only inlineSourceMap when debugging through jake-browser (#9080)

* Only inlineSourceMap when debugging through jake-browser

* Address PR: fix typo in opt's property

* minor fix: add missing return clause

* Use camel-case instead of snake-case (#9134)

* Baseline fix, CR comments, lint

* CR changes

* Add test for jsdoc in navigation bar

* Fixes runtests-parallel not reporting failure for failed tests.

* Fix decorator metadata emit for rest arg with no type

* Add isDefinition to ReferenceEntry

Clients can now easily tell if the reference is to a definition or a
usage.

* Test isDefinition

* Add option to bail out of `jake runtests` when one test fails

* Absolute-ify paths in both places

* Refactor

* Add unit test

* lint

* Added tests.

* Accepted baselines.

* Emit 'exports.' if the shorthand is a general export.

* Accepted baselines.

* Emit 'Promise' decorator metadata return type for async methods

* Respond to PR comment

* Unescape identifiers used in code completion

* Make isDefinition required.

For the deprecated getOccurrencesAtPosition, isDefinition is always false.

* Add more isDefinition tests and fix computed property bug

* Fix bug: do unescaping in the right place, so that it only affects escaped javascript identifiers

* Use `isLiteralComputedPropertyDeclarationName`
2016-06-14 15:00:40 -07:00
Ron Buckton
147addb4e9 Merge branch 'transforms' into transforms-importHelpers 2016-06-14 13:21:24 -07:00
Yui
f235bf7db8 [Transforms] Merge master 06/06/2016 (#8991)
* Remove check narrowing only certain types, add test showing issues with this

* string literal case test

* Reconcile fix with CFA work

* Defaultable -> NotNarrowable to align with use

* Missed a defaultable in comments

* Add test for narrowing to unions of string literals

* Rewrite isInStringLiteral to accomodate for unterminated strings

* Refactor signatureHelp to expose helper functions

* Add support for completion in string literals

* Remove unused check

* Use const instead of let

* Fix error

* Formatting changes

* Use shorthand properties

* Add failing test for #8738

* Sort baseline reference identifier by name

* Detects assignment to internal module export clause, fixes #8738

* add SharedArrayBuffer

fix

* Factor out assignment op check

* Add test for composite assignment

* Factor out the behaviour and handles x++ and ++x

* Handles ES3 default as identifier name

* Fix missing else statement

* isNameOfExportedDeclarationInNonES6Module

* Reorder options alphabetically

* Mark diagnostics, and skipDefaultLibCheck as internal

* Allow an import of "foo.js" to be matched by a file "foo.ts"

* Improve loadModuleFromFile code

* Respond to PR comments

* Respond to more PR comments

* Fix test

* Actually merge from master

* Revert to old tryLoad implementation

* Run fixupParentReferences when parsing isolated jsDocComment

* initial revision of unit test support for project system in tsserver

* Allow wildcard ("*") patterns in ambient module declarations

* Add non-widening forms of null and undefined

* Create separate control flows for property declarations with initializers

* Add regression test

* Allow trailing commas in function parameter and argument lists

* Add tests

* Remove unused variable

* Add null check and CR feedback

* Support shorthand ambient module declarations

* Revert "Merge pull request #7235 from weswigham/narrow-all-types"

This reverts commit ef0f6c8fe4f94a7e294cfe42d7025c9dca6535d5, reversing
changes made to 9f087cb62ade7a879e23c229df752fc8f87d679c.

* reuse the fixupParentReferences function

* Improve typing of && operator with --strictNullChecks

* Add test

* Respond to PR comments

* Respond to PR comments

* Add merging tests

* Use a function `stringify` to simplify calls to `JSON.stringify(xyz, undefined, 2)`

* Update tests

* Fix mistake

* Include indent in navigation bar protocol

Previously navbar01 test had indents when run in the browser but not when run from node. Now they run the same.

* Remove unnecessary restrictions in property access narrowing

* Fix fourslash test

* Add regression test

* Consider property declarations to be control flow containers

* Adding regression test

* Remove restriction on --target es5 and --module es6

* change type definition for Object.create

* Fix signature help

* Add "implicit any" warning for shorthand ambient modules

* Remove trailing whitespace

* Support using string values in enums for CompilerOptions in transpile methods

* Remove trailing whitespace in jakefile

* Make `jake runtests-browser` support test regexes with spaces

For example: `jake runtests-browser t="transpile .js files"` now works.

* Add another test

* factor out isJsxOrTsxExtension

* Move to a conformance test

* Revert "Revert "Merge pull request #7235 from weswigham/narrow-all-types""

This reverts commit fc3e040c5167868ed623612e8f33fb3beedf73b1.

* Use inclusive flag, as originally done, but include almost everything

* Add additional tests

* Respond to PR comments

* Fix typo

* add tests for tsserver project system

* Fix test

* Allow case comparison to undefined and null in strict null checking mode

* Remove incorrectly added tests

* check if moduleResolution when verifying that program can be reused

* more tests for module resolution change and exclude

* Fix linting issues

* Merge JSDoc of assignments from function expressions

* Allow nested assignments in type guards

* Add tests

* Improve order of parameter's merged jsdoc

* Force LF newlines for LKG builds/non debug builds
Fixes 6630

* Create intersection types in type guards for unrelated types

* Split commentsFunction test into expr/decl

And renumber.

* Remove TODO comments

* Accept new baselines

* Add tests

* Remove comments

* Fix test helper

* Recognize relative path using in outDir property (#9025)

* Recognize relative path using in outDir property

* Add projects tests

* Add project .json files

* Update baselines

* Add comments

* Add test case

The test passes in 1.8 and fails in master.

* Return trace when exception happens

* Remove Long-Done TODO

AFAIK, the harness sources have been concatenated into `run.js` for as long as I've known. This stops executing them twice (and in turn makes debugging tests much easier, since you no longer have to debug into eval'd code).

* Allow primitive type guards with typeof on right

Previously, only type guards of the form `typeof x === 'string'` were
allowed. Now you can write `'string' === typeof x`.

* Primitive type guards are now order independent

* Fix comments in tests

* Add handleing for classes

* Add more tests for target=es5 module=es6

* addExportToArgumentListKind

* Accept baseline

* Add more tests

* wip-fixing transforms

* Adds progress indicators to the runtests-parallel build task.

* Fixed typo

* Fix comment

* Add test for out-of-range error

* Use proper method of not resolving alias

* Fix module loading error

(commandLineOptions_stringToEnum would be undefined if optionDeclarations wasn't loaded yet)

* Port 8739

* Update tests

* Update baselines

* Contextually type return statement in async function

* Remove stale files

* Undo change

* Improve perf

* Improve tests

* Fix sourcemaps for debugging tests

* Allow --sourceRoot with --inlineSources option
Fixes #8445

* this in parameter initializers resolves to class

Accept baselines now that the test passes.

* Add tests for more kinds of import/export

* Fix7334 Disallow async in functionExpression and ArrowFunction (#9062)

* Error when using async modifier in function-expression and arrow-function when target es5

* Add tests and baselines

* Resolve function-this in parameter initialisers when explicitly provided

* Allow null/undefined guard with null/undefined on left

Also add a test with baselines.

* Code review comments

* Update more diagnostic messages ES6->2015

Fix #8996 CC @mhegazy.

* Fixes an issue with runtests-parallel when global mocha is not installed.

* Update LKG

* Add tests

* fix baselines

* Recommend runtests-parallel in CONTRIBUTING

* Only inlineSourceMap when debugging through jake-browser (#9080)

* Only inlineSourceMap when debugging through jake-browser

* Address PR: fix typo in opt's property

* Manually port tests from PR 8470

* minor fix: add missing return clause

* Support using string values in enums for CompilerOptions in transpile methods

* Support using string values in enums for CompilerOptions in transpile methods

# Conflicts:
#	tests/cases/unittests/transpile.ts

* Fix test helper

* Add test for out-of-range error

* Fix module loading error

(commandLineOptions_stringToEnum would be undefined if optionDeclarations wasn't loaded yet)

* Use camel-case instead of snake-case (#9134)

* Manually add tests for PR 8988

* Allow wildcard ("*") patterns in ambient module declarations

* Respond to PR comments

* Add another test

* Improve perf

* Improve tests

* Update baseline from merging with master

* Address PR comment

* Update baseline

* Refactor how we retrieve binding-name cache in module transformer

* Temporary accept so we get a clean run-tests result
2016-06-14 11:36:57 -07:00
Ron Buckton
f6f1a0dca1 Adds support for importing external helpers. 2016-06-11 00:12:04 -07:00
Yui
f619282af1 [Transforms] Update transforms with recent master (#8960)
* Remove check narrowing only certain types, add test showing issues with this

* string literal case test

* Reconcile fix with CFA work

* Defaultable -> NotNarrowable to align with use

* Missed a defaultable in comments

* Add test for narrowing to unions of string literals

* Actually merge from master

* Run fixupParentReferences when parsing isolated jsDocComment

* initial revision of unit test support for project system in tsserver

* Add non-widening forms of null and undefined

* Create separate control flows for property declarations with initializers

* Add regression test

* Add tests

* Remove unused variable

* Add null check and CR feedback

* Revert "Merge pull request #7235 from weswigham/narrow-all-types"

This reverts commit ef0f6c8fe4f94a7e294cfe42d7025c9dca6535d5, reversing
changes made to 9f087cb62ade7a879e23c229df752fc8f87d679c.

* reuse the fixupParentReferences function

* Fix up error from merging with master
2016-06-03 11:02:35 -07:00
Yui
e35dd79c04 [Transforms] Update baselines from merging with master round 2 (#8926)
* update baselines from merging with master

* Correctly fix#8786

* Fix up linting errors

* Fix spelling error in comment

* Remove usage of null

* Revert "Remove usage of null"

This reverts commit d9102d1e3f28d4f2791b7eb99c737e0004f01463.

* Disable using null in unittest as we use null to signal to not generate baselines

* Remove setting disable comment as we already done so in createCommentWriter

* Address linting

* Fix travis failure

* Fix travis failure
2016-06-02 10:57:28 -07:00
Ron Buckton
a07965aad8 Merge branch 'master' into transforms 2016-05-31 18:43:51 -07:00
zhengbli
630517b8ad Merge branch 'master' of https://github.com/Microsoft/TypeScript into typedefForJsdoc 2016-05-31 15:30:42 -07:00
Anders Hejlsberg
4095602ce5 Merge pull request #8849 from Microsoft/outerControlFlows
Improve control flow analysis in function expressions
2016-05-31 14:51:39 -07:00
zhengbli
58fdd011df avoid eating all preceding empty lines 2016-05-31 14:11:39 -07:00
zhengbli
241920c960 Merge branch 'outerControlFlows' of https://github.com/Microsoft/TypeScript into typedefForJsdoc
# Conflicts:
#	src/compiler/binder.ts
2016-05-31 14:02:45 -07:00
zhengbli
3433a7800a Fix formatOnEnter for double newlines 2016-05-31 12:35:12 -07:00
Zhengbo Li
e93f9df955 Fix broken test 2016-05-31 10:48:25 -07:00
Zhengbo Li
5261467a32 Merge branch 'master' of https://github.com/Microsoft/TypeScript into typedefForJsdoc 2016-05-31 10:39:23 -07:00
Andy
13900aaf27 Merge pull request #8863 from Microsoft/navbar_readonly_property
Add tests for private and readonly parameter properties in navbar
2016-05-31 05:49:09 -07:00
zhengbli
59b188d4ca Add navigationTo test for jsdoc typedef 2016-05-31 02:05:26 -07:00
Anders Hejlsberg
4d730a5c6a Update test 2016-05-28 06:45:10 -07:00
Vladimir Matveev
92938cd8df check that default clause is non-empty in reachability checks 2016-05-27 15:38:59 -07:00
Andy Hanson
f3d1b46dcb Add tests for private and readonly parameter properties in navbar 2016-05-27 10:40:28 -07:00
Sheetal Nandi
35156527a3 Merge pull request #8789 from Microsoft/getSymbolAtAliasLocation
Do not resolve alias when getting symbol of import equal's right hand side
2016-05-27 09:27:23 -07:00
Andy
a1f110f932 Merge pull request #8812 from Microsoft/navbar_root
Always include a root node in the navigation bar.
2016-05-27 06:56:53 -07:00
Andy Hanson
b2664e7f84 Use a JSON.stringify replacer function instead of changing the value beforehand 2016-05-27 06:27:13 -07:00
Anders Hejlsberg
e5e21f9b5e Add new tests 2016-05-26 16:26:40 -07:00
Anders Hejlsberg
d20664aa69 Fix test 2016-05-26 16:26:30 -07:00
Nathan Shively-Sanders
154729d40e Merge pull request #8770 from Microsoft/apparent-members-for-type-parameters-constrained-by-any
Apparent members for type parameters constrained by any
2016-05-26 16:26:28 -07:00
zhengbli
e69976c4b7 Merge branch 'master' of https://github.com/Microsoft/TypeScript into typedefForJsdoc
# Conflicts:
#	src/services/utilities.ts
2016-05-26 14:50:09 -07:00
Mohamed Hegazy
b70d07954c Merge pull request #8845 from Microsoft/Fix8834
Fix #8834: exclude paramters and variables from flag checks
2016-05-26 14:35:50 -07:00
Nathan Shively-Sanders
0a623f8a71 Merge pull request #8822 from Microsoft/excess-property-check-numeric-indexers
Excess property check numeric indexers
2016-05-26 13:39:29 -07:00
Andy Hanson
63b5790dcd Merge branch 'master' into navbar_root 2016-05-26 13:29:33 -07:00
Nathan Shively-Sanders
6304d79536 Merge pull request #8844 from Microsoft/create-symbol-for-assignments-in-javascript-constructors
Symbol for property assignments in Salsa/ES6 constructors
2016-05-26 13:26:48 -07:00
Mohamed Hegazy
5e49b57fea Fix #8834: exclude paramters and variables from flag checks 2016-05-26 13:00:38 -07:00
Nathan Shively-Sanders
abfcdd2cfd Symbol for property assignments in Salsa/ES6 constructors
Previously no symbol at all was created, meaning that Salsa didn't track
properties in ES6 code.
2016-05-26 12:42:35 -07:00
Andy Hanson
fdd5c06b63 Include type aliases as childItems in navigation bar 2016-05-26 12:18:19 -07:00
Andy Hanson
fe970abc81 Change tests to use the full JSON output of the navigation bar.
This reduces the confusion of verify.navigationBarCount() counting duplicate items.
2016-05-26 08:40:35 -07:00
Andy
27a1e91268 Merge pull request #8814 from Microsoft/navbar_modules
Include modules as childItems in navigation bar
2016-05-26 07:07:02 -07:00
Andy
cd5a4439b9 Merge pull request #8811 from Microsoft/navbar_class_child_item
Include classes as childItems in navigation bar
2016-05-26 06:48:18 -07:00
Andy Hanson
1be09c9c57 Merge branch 'navbar_class_child_item' into navbar_modules 2016-05-26 06:23:01 -07:00
Andy Hanson
5c23b3bc20 Fix more tests 2016-05-26 06:04:42 -07:00