2014-10-10 02:31:22 +02:00
[![Build Status ](https://travis-ci.org/Microsoft/TypeScript.svg?branch=master )](https://travis-ci.org/Microsoft/TypeScript)
2015-11-12 16:38:04 +01:00
[![npm version ](https://badge.fury.io/js/typescript.svg )](https://www.npmjs.com/package/typescript)
2017-04-18 12:05:43 +02:00
[![Downloads ](https://img.shields.io/npm/dm/typescript.svg )](https://www.npmjs.com/package/typescript)
2014-10-10 02:31:22 +02:00
2014-07-08 02:08:16 +02:00
# TypeScript
2015-06-05 21:04:15 +02:00
[![Join the chat at https://gitter.im/Microsoft/TypeScript ](https://badges.gitter.im/Join%20Chat.svg )](https://gitter.im/Microsoft/TypeScript?utm_source=badge& utm_medium=badge& utm_campaign=pr-badge& utm_content=badge)
2014-07-08 02:08:16 +02:00
2017-06-23 21:51:12 +02:00
[TypeScript ](https://www.typescriptlang.org/ ) is a language for application-scale JavaScript. TypeScript adds optional types, classes, and modules to JavaScript. TypeScript supports tools for large-scale JavaScript applications for any browser, for any host, on any OS. TypeScript compiles to readable, standards-based JavaScript. Try it out at the [playground ](https://www.typescriptlang.org/play/ ), and stay up to date via [our blog ](https://blogs.msdn.microsoft.com/typescript ) and [Twitter account ](https://twitter.com/typescriptlang ).
2014-07-08 02:08:16 +02:00
2015-07-24 20:28:08 +02:00
## Installing
For the latest stable version:
```
npm install -g typescript
```
For our nightly builds:
```
npm install -g typescript@next
```
2014-07-08 02:08:16 +02:00
2014-07-17 19:08:24 +02:00
## Contribute
There are many ways to [contribute ](https://github.com/Microsoft/TypeScript/blob/master/CONTRIBUTING.md ) to TypeScript.
* [Submit bugs ](https://github.com/Microsoft/TypeScript/issues ) and help us verify fixes as they are checked in.
* Review the [source code changes ](https://github.com/Microsoft/TypeScript/pulls ).
2017-06-23 21:51:12 +02:00
* Engage with other TypeScript users and developers on [StackOverflow ](https://stackoverflow.com/questions/tagged/typescript ).
* Join the [#typescript ](https://twitter.com/#!/search/realtime/%23typescript ) discussion on Twitter.
2014-07-17 19:08:24 +02:00
* [Contribute bug fixes ](https://github.com/Microsoft/TypeScript/blob/master/CONTRIBUTING.md ).
2016-09-14 01:43:52 +02:00
* Read the language specification ([docx](https://github.com/Microsoft/TypeScript/blob/master/doc/TypeScript%20Language%20Specification.docx?raw=true),
[pdf ](https://github.com/Microsoft/TypeScript/blob/master/doc/TypeScript%20Language%20Specification.pdf?raw=true ), [md ](https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md )).
2014-07-17 19:08:24 +02:00
2016-09-14 01:43:52 +02:00
This project has adopted the [Microsoft Open Source Code of Conduct ](https://opensource.microsoft.com/codeofconduct/ ). For more information see
the [Code of Conduct FAQ ](https://opensource.microsoft.com/codeofconduct/faq/ ) or contact [opencode@microsoft.com ](mailto:opencode@microsoft.com )
with any additional questions or comments.
2014-07-17 19:08:24 +02:00
2014-07-13 17:05:31 +02:00
## Documentation
2017-06-23 21:51:12 +02:00
* [Quick tutorial ](https://www.typescriptlang.org/docs/tutorial.html )
* [Programming handbook ](https://www.typescriptlang.org/docs/handbook/basic-types.html )
2014-09-25 22:44:50 +02:00
* [Language specification ](https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md )
2017-06-23 21:51:12 +02:00
* [Homepage ](https://www.typescriptlang.org/ )
2014-07-13 17:05:31 +02:00
## Building
2014-07-08 02:08:16 +02:00
2017-06-23 21:51:12 +02:00
In order to build the TypeScript compiler, ensure that you have [Git ](https://git-scm.com/downloads ) and [Node.js ](https://nodejs.org/ ) installed.
2014-07-21 19:38:22 +02:00
Clone a copy of the repo:
```
git clone https://github.com/Microsoft/TypeScript.git
```
Change to the TypeScript directory:
```
cd TypeScript
```
[Transforms] Merge master 07/11 into transform (#9697)
* Use merge2, gulp-if, gulp-newer, and more projects
* Add watch task
* Working non-inline sourcemaps for runtests
* browser tests now also loads sourcemaps from disk
* Lazypipes and better services stream management
* export interface used by other exported functions
* Make goto-definition work for `this` parameter
* Add new error for rest parameters
* Add error message for rest parameter properties
* Fix case when a document contains multiple script blocks with different base indentations.
Use the base indent size if it is greater that the indentation of the inherited predecessor
* Fix rwc-runner from breaking change in compiler (#9284)
* Signatures use JSDoc to determine optionality
* Changed implementation to use closure
* Updated tests
* Fixed linting error
* Adding Code of Conduct notice
* Don't crash when JS class property is self-referential.
Fixes #9293
* Remove stale baselines
* For optionality, check question token before JSDoc
* Accept rest parameter properties error baselines
* Change binding pattern parameter property error
* Accept binding pattern properties error baselines
* Lint
* Port the sync version diagnostics API from tsserverVS-WIP branch to 2.0
* Do copyright without gulp-if and lazypipe
* Change test comment and accept baseline
* Remove tsd scripts task from gulpfile
* Make use of module compiler option explicit, add strip internal to tsconfigs
* Remove Signature#thisType and use Signature#thisParameter everywhere
* Add Gulpfile lint to jake, fix lints
* Change reference tests to verify actual ranges referenced and not just their count
* Respond to PR comments
* Add new lint rule
* Fix object whitespace lints
* Fix case of gulpfile dependencies
* 1. pass subshell args 2. fix build order in services
1. /bin/sh requires its arguments joined into a single string unlike
cmd.
2. services/ depends on a couple of files from server/ but the order was
implicit, and changed from jakefile. Now the order is explicit in the
tsconfig.
* Fix single-quote lint
* Check for exactly one space
* Fix excess whitespace issues
* Add matchFiles test to Gulpfile
This was merged while the gulpfile was still in-progress
* Fix LKG useDebug task and newLine flag
* Update LKG
* Clean before LKG in Gulpfile
* Fix lint
* Correct the api string name
* Allow space in exec cmds
* Fix typo
* Add new APIs to protocol
* Fix bug where `exports.` was prepended to namespace export accesses
* Remove unnecessary parameter
* extract expression into function
* Add fourslash tests & address CR comments
* Fix 8549: Using variable as Jsx tagname (#9337)
* Parse JSXElement's name as property access instead of just entity name. So when one accesses property of the class through this, checker will check correctly
* wip - just resolve to any type for now
* Resolve string type to anytype and look up property in intrinsicElementsType of Jsx
* Add tests and update baselines
* Remove unneccessary comment
* wip-address PR
* Address PR
* Add tets and update baselines
* Fix linting error
* Unused identifiers compiler code (#9200)
* Code changes to update references of the Identifiers
* Added code for handling function, method and coonstructor level local variables and parameters
* Rebased with origin master
* Code changes to handle unused private variables, private methods and typed parameters
* Code changes to handle namespace level elements
* Code changes to handle unimplemented interfaces
* Code to optimize the d.ts check
* Correct Code change to handle the parameters for methods inside interfaces
* Fix for lint error
* Remove Trailing whitespace
* Code changes to handle interface implementations
* Changes to display the error position correctly
* Compiler Test Cases
* Adding condition to ignore constructor parameters
* Removing unnecessary tests
* Additional changes for compiler code
* Additional changes to handle constructor scenario
* Fixing the consolidated case
* Changed logic to search for private instead of public
* Response to PR Comments
* Changed the error code in test cases as result of merge with master
* Adding the missing file
* Adding the missing file II
* Response to PR comments
* Code changes for checking unused imports
* Test Cases for Unused Imports
* Response to PR comments
* Code change specific to position of Import Declaration
* Code change for handling the position for unused import
* New scenarios for handling parameters in lambda function, type parameters in methods, etc.
* Additional scenarios based on PR comments
* Removing a redundant check
* Added ambient check to imports and typeparatmeter reporting
* Added one more scenario to handle type parameters
* Added new scenario for TypeParameter on Interface
* Refactoring the code
* Added scenario to handle private class elements declared in constructor.
* Minor change to erro reporting
* Fix 8355: Fix emit metadata different between transpile and tsc --isolatedModule (#9232)
* Instead of returning undefined for unknownSymbol return itself
* Add Transpile unittest
* Wip - Add project tests
* Add project tests and baselines
* Update existed tests
* Add tests for emitting metadata with module targetting system
* Fix 8467: Fix incorrect emit for accessing static property in static propertyDeclaration (#8551)
* Fix incorrect emit for accessing static property in static propertyDeclaration
* Update tests and baselines
* Update function name
* Fix when accessing static property inside arrow function
* Add tests and baselines
* do not format comma/closeparen in jsxelement
* format jsx expression
* Remove extra baselines
* Fixed bugs and linting
* Added project tests for node_modules JavaScript searches
* Removed old TODO comment
* make rules optional
* Fixed the regexp for removing full paths
* Fix type of the disableSizeLimit option
* Update version to 2.0.0
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Remove unused compiler option (#9381)
* Update LKG
* Added emitHost method to return source from node modules
* Marked new method internal
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Port 9396 to release 2.0
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* Merge master into release-2.0 (#9400)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix #9402: Do not report unused identifier errors for catch variables
* getVarDate should be on the Date interface
* Defere checking unsed identifier checks
* Do not scan nodes preceding formatted region, just skip over them
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Use a deferred list to check for unused identifiers
* push checks to checkUnusedIdentifiersDeferred
* use isParameterPropertyDeclaration to test for paramter propoerties
* runtests-parallel skips empty buckets
Previously, it would enter them as buckets with no tests, which would
make our test runners run *every* test.
This was very obvious on machines with lots of cores.
* Report unused identifiers in for statements
* Do not check ambients, and overloads
* Add tests
* Consolidate type reference marking in getTypeFromTypeReference
* Handel type aliases
* Add tests
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Do not report unused errors for module augmentations
* Consolidate refernce marking in resolveName to allow marking aliases correctelly
* add tests
* Code review comments
* Only mark symbols found in a local symbol table
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Respond to PR comments
* Better name for test
* handel private properties correctelly
* Port 9426 to release 2.0
* Handel Swtich statements
check for locals on for statments
only mark private properties
* Removed one error to avoid full path issues
* Don't emit source files found under node_modules
(cherry picked from commit 5f8cf1af3e4be61037cbafd698535d32d292941f)
* Dont load JavaScript if types packages are present
(cherry picked from commit 5a45c44eb789f52ceb1aa0e23a230ecb599bfb08)
* Renamed API
(cherry picked from commit d8047b607f11cdf319284bb344282582c7c0aea0)
* Removed one error to avoid full path issues
(cherry picked from commit 5e4f13f342a75ec8f7cf65cb669bec9d6e6c5581)
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Fix #9458: exclude parameters starting with underscore from unusedParamter checks
* change variable name for strict mode
* Increase timeout from running RWC. As UWDWeb takes slightly longer now (#9454)
* Handle relative paths in tsconfig exclude and include globs
* Merge master into release branch 06/30 (#9447)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* getVarDate should be on the Date interface
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Removed one error to avoid full path issues
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Improve names of whitespace functions
* Handle relative paths in tsconfig exclude and include globs
Port 9475 to release 2.0
* add new method getEmitOutputObject to return result of the emit as object with properties instead of json string
* fix linter
* Fix PromiseLike to be compatible with es6-promise (#9484)
* Fix reading files from IOLog because previous our API captures (#9483)
* Fix reading files from IOLog because previous our API captures
* Refactoring the ioLog
* Exclude FlowSwitchClause from flow graph for case expressions
* Add regression test
* Update LKG
* Update language in comment
* Add .mailmap file
* Add authors script to generate authors from repo
* Update AUTHORS.md for release-2.0
* Update script to pass more than one argument
* Remove the unused text buffer from ScriptInfo
* Fix #9531: account for async as an contextual keyword when parsing export assignments
* Update LKG
* Swap q from a reference to an import
* Fix #9550: exclude 'this' type parameters from unusedParameters checks.
* Update comment to reflect new dependency
* Avoid putting children tags in jsdoccomment
* Parse the result of getDirectories call
* Update harness getDirectories implementation for shims
* Fix multiple Salsa assignment-declarations
Previously, all assignment-declarations needed to be of the same kind:
either all `this.p = ...` assignments or `C.prototype.p = ...`
assignments.
* Test for multiple salsa assignment-declarations
* Add test for parsed @typedef tag node shape
* Provide a symbol for salsa-inferred class types
* Update .mailmap
* Fix module tracking
* Updated test with relative import
* Fixed the node tracking and a harness bug
* fixed lint error
* Fixed implicit any
* Added missing test files
* Removed duplicate logic
* Update conflicting baseline.
PR #9574 added a baseline that #9578 caused to be changed. The two PRs
went in so close to each other that the CI build didn't catch the change
to the new test's baseline.
* Fix type of JSXTagName
* Update baselines to use double-quote
* Update baselines when emitting metadata decorator
* Update baselines for async-await function
* Update baselines for comment in capturing down-level for...of and for...in
* Add missing Transpile tests
* Remove old JS transpile baselines
* Passing program as argument in emitWorker
* Port PR#9607 transforms
* Port new JSDOC tests to use baseline
* substitute alias for class expression in statics
* Address new lint warnings
* Change name for substitution function.
2016-07-19 00:38:30 +02:00
Install Gulp tools and dev dependencies:
2014-07-21 19:38:22 +02:00
```
[Transforms] Merge master 07/11 into transform (#9697)
* Use merge2, gulp-if, gulp-newer, and more projects
* Add watch task
* Working non-inline sourcemaps for runtests
* browser tests now also loads sourcemaps from disk
* Lazypipes and better services stream management
* export interface used by other exported functions
* Make goto-definition work for `this` parameter
* Add new error for rest parameters
* Add error message for rest parameter properties
* Fix case when a document contains multiple script blocks with different base indentations.
Use the base indent size if it is greater that the indentation of the inherited predecessor
* Fix rwc-runner from breaking change in compiler (#9284)
* Signatures use JSDoc to determine optionality
* Changed implementation to use closure
* Updated tests
* Fixed linting error
* Adding Code of Conduct notice
* Don't crash when JS class property is self-referential.
Fixes #9293
* Remove stale baselines
* For optionality, check question token before JSDoc
* Accept rest parameter properties error baselines
* Change binding pattern parameter property error
* Accept binding pattern properties error baselines
* Lint
* Port the sync version diagnostics API from tsserverVS-WIP branch to 2.0
* Do copyright without gulp-if and lazypipe
* Change test comment and accept baseline
* Remove tsd scripts task from gulpfile
* Make use of module compiler option explicit, add strip internal to tsconfigs
* Remove Signature#thisType and use Signature#thisParameter everywhere
* Add Gulpfile lint to jake, fix lints
* Change reference tests to verify actual ranges referenced and not just their count
* Respond to PR comments
* Add new lint rule
* Fix object whitespace lints
* Fix case of gulpfile dependencies
* 1. pass subshell args 2. fix build order in services
1. /bin/sh requires its arguments joined into a single string unlike
cmd.
2. services/ depends on a couple of files from server/ but the order was
implicit, and changed from jakefile. Now the order is explicit in the
tsconfig.
* Fix single-quote lint
* Check for exactly one space
* Fix excess whitespace issues
* Add matchFiles test to Gulpfile
This was merged while the gulpfile was still in-progress
* Fix LKG useDebug task and newLine flag
* Update LKG
* Clean before LKG in Gulpfile
* Fix lint
* Correct the api string name
* Allow space in exec cmds
* Fix typo
* Add new APIs to protocol
* Fix bug where `exports.` was prepended to namespace export accesses
* Remove unnecessary parameter
* extract expression into function
* Add fourslash tests & address CR comments
* Fix 8549: Using variable as Jsx tagname (#9337)
* Parse JSXElement's name as property access instead of just entity name. So when one accesses property of the class through this, checker will check correctly
* wip - just resolve to any type for now
* Resolve string type to anytype and look up property in intrinsicElementsType of Jsx
* Add tests and update baselines
* Remove unneccessary comment
* wip-address PR
* Address PR
* Add tets and update baselines
* Fix linting error
* Unused identifiers compiler code (#9200)
* Code changes to update references of the Identifiers
* Added code for handling function, method and coonstructor level local variables and parameters
* Rebased with origin master
* Code changes to handle unused private variables, private methods and typed parameters
* Code changes to handle namespace level elements
* Code changes to handle unimplemented interfaces
* Code to optimize the d.ts check
* Correct Code change to handle the parameters for methods inside interfaces
* Fix for lint error
* Remove Trailing whitespace
* Code changes to handle interface implementations
* Changes to display the error position correctly
* Compiler Test Cases
* Adding condition to ignore constructor parameters
* Removing unnecessary tests
* Additional changes for compiler code
* Additional changes to handle constructor scenario
* Fixing the consolidated case
* Changed logic to search for private instead of public
* Response to PR Comments
* Changed the error code in test cases as result of merge with master
* Adding the missing file
* Adding the missing file II
* Response to PR comments
* Code changes for checking unused imports
* Test Cases for Unused Imports
* Response to PR comments
* Code change specific to position of Import Declaration
* Code change for handling the position for unused import
* New scenarios for handling parameters in lambda function, type parameters in methods, etc.
* Additional scenarios based on PR comments
* Removing a redundant check
* Added ambient check to imports and typeparatmeter reporting
* Added one more scenario to handle type parameters
* Added new scenario for TypeParameter on Interface
* Refactoring the code
* Added scenario to handle private class elements declared in constructor.
* Minor change to erro reporting
* Fix 8355: Fix emit metadata different between transpile and tsc --isolatedModule (#9232)
* Instead of returning undefined for unknownSymbol return itself
* Add Transpile unittest
* Wip - Add project tests
* Add project tests and baselines
* Update existed tests
* Add tests for emitting metadata with module targetting system
* Fix 8467: Fix incorrect emit for accessing static property in static propertyDeclaration (#8551)
* Fix incorrect emit for accessing static property in static propertyDeclaration
* Update tests and baselines
* Update function name
* Fix when accessing static property inside arrow function
* Add tests and baselines
* do not format comma/closeparen in jsxelement
* format jsx expression
* Remove extra baselines
* Fixed bugs and linting
* Added project tests for node_modules JavaScript searches
* Removed old TODO comment
* make rules optional
* Fixed the regexp for removing full paths
* Fix type of the disableSizeLimit option
* Update version to 2.0.0
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Remove unused compiler option (#9381)
* Update LKG
* Added emitHost method to return source from node modules
* Marked new method internal
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Port 9396 to release 2.0
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* Merge master into release-2.0 (#9400)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix #9402: Do not report unused identifier errors for catch variables
* getVarDate should be on the Date interface
* Defere checking unsed identifier checks
* Do not scan nodes preceding formatted region, just skip over them
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Use a deferred list to check for unused identifiers
* push checks to checkUnusedIdentifiersDeferred
* use isParameterPropertyDeclaration to test for paramter propoerties
* runtests-parallel skips empty buckets
Previously, it would enter them as buckets with no tests, which would
make our test runners run *every* test.
This was very obvious on machines with lots of cores.
* Report unused identifiers in for statements
* Do not check ambients, and overloads
* Add tests
* Consolidate type reference marking in getTypeFromTypeReference
* Handel type aliases
* Add tests
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Do not report unused errors for module augmentations
* Consolidate refernce marking in resolveName to allow marking aliases correctelly
* add tests
* Code review comments
* Only mark symbols found in a local symbol table
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Respond to PR comments
* Better name for test
* handel private properties correctelly
* Port 9426 to release 2.0
* Handel Swtich statements
check for locals on for statments
only mark private properties
* Removed one error to avoid full path issues
* Don't emit source files found under node_modules
(cherry picked from commit 5f8cf1af3e4be61037cbafd698535d32d292941f)
* Dont load JavaScript if types packages are present
(cherry picked from commit 5a45c44eb789f52ceb1aa0e23a230ecb599bfb08)
* Renamed API
(cherry picked from commit d8047b607f11cdf319284bb344282582c7c0aea0)
* Removed one error to avoid full path issues
(cherry picked from commit 5e4f13f342a75ec8f7cf65cb669bec9d6e6c5581)
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Fix #9458: exclude parameters starting with underscore from unusedParamter checks
* change variable name for strict mode
* Increase timeout from running RWC. As UWDWeb takes slightly longer now (#9454)
* Handle relative paths in tsconfig exclude and include globs
* Merge master into release branch 06/30 (#9447)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* getVarDate should be on the Date interface
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Removed one error to avoid full path issues
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Improve names of whitespace functions
* Handle relative paths in tsconfig exclude and include globs
Port 9475 to release 2.0
* add new method getEmitOutputObject to return result of the emit as object with properties instead of json string
* fix linter
* Fix PromiseLike to be compatible with es6-promise (#9484)
* Fix reading files from IOLog because previous our API captures (#9483)
* Fix reading files from IOLog because previous our API captures
* Refactoring the ioLog
* Exclude FlowSwitchClause from flow graph for case expressions
* Add regression test
* Update LKG
* Update language in comment
* Add .mailmap file
* Add authors script to generate authors from repo
* Update AUTHORS.md for release-2.0
* Update script to pass more than one argument
* Remove the unused text buffer from ScriptInfo
* Fix #9531: account for async as an contextual keyword when parsing export assignments
* Update LKG
* Swap q from a reference to an import
* Fix #9550: exclude 'this' type parameters from unusedParameters checks.
* Update comment to reflect new dependency
* Avoid putting children tags in jsdoccomment
* Parse the result of getDirectories call
* Update harness getDirectories implementation for shims
* Fix multiple Salsa assignment-declarations
Previously, all assignment-declarations needed to be of the same kind:
either all `this.p = ...` assignments or `C.prototype.p = ...`
assignments.
* Test for multiple salsa assignment-declarations
* Add test for parsed @typedef tag node shape
* Provide a symbol for salsa-inferred class types
* Update .mailmap
* Fix module tracking
* Updated test with relative import
* Fixed the node tracking and a harness bug
* fixed lint error
* Fixed implicit any
* Added missing test files
* Removed duplicate logic
* Update conflicting baseline.
PR #9574 added a baseline that #9578 caused to be changed. The two PRs
went in so close to each other that the CI build didn't catch the change
to the new test's baseline.
* Fix type of JSXTagName
* Update baselines to use double-quote
* Update baselines when emitting metadata decorator
* Update baselines for async-await function
* Update baselines for comment in capturing down-level for...of and for...in
* Add missing Transpile tests
* Remove old JS transpile baselines
* Passing program as argument in emitWorker
* Port PR#9607 transforms
* Port new JSDOC tests to use baseline
* substitute alias for class expression in statics
* Address new lint warnings
* Change name for substitution function.
2016-07-19 00:38:30 +02:00
npm install -g gulp
2014-07-21 19:38:22 +02:00
npm install
```
Use one of the following to build and test:
```
[Transforms] Merge master 07/11 into transform (#9697)
* Use merge2, gulp-if, gulp-newer, and more projects
* Add watch task
* Working non-inline sourcemaps for runtests
* browser tests now also loads sourcemaps from disk
* Lazypipes and better services stream management
* export interface used by other exported functions
* Make goto-definition work for `this` parameter
* Add new error for rest parameters
* Add error message for rest parameter properties
* Fix case when a document contains multiple script blocks with different base indentations.
Use the base indent size if it is greater that the indentation of the inherited predecessor
* Fix rwc-runner from breaking change in compiler (#9284)
* Signatures use JSDoc to determine optionality
* Changed implementation to use closure
* Updated tests
* Fixed linting error
* Adding Code of Conduct notice
* Don't crash when JS class property is self-referential.
Fixes #9293
* Remove stale baselines
* For optionality, check question token before JSDoc
* Accept rest parameter properties error baselines
* Change binding pattern parameter property error
* Accept binding pattern properties error baselines
* Lint
* Port the sync version diagnostics API from tsserverVS-WIP branch to 2.0
* Do copyright without gulp-if and lazypipe
* Change test comment and accept baseline
* Remove tsd scripts task from gulpfile
* Make use of module compiler option explicit, add strip internal to tsconfigs
* Remove Signature#thisType and use Signature#thisParameter everywhere
* Add Gulpfile lint to jake, fix lints
* Change reference tests to verify actual ranges referenced and not just their count
* Respond to PR comments
* Add new lint rule
* Fix object whitespace lints
* Fix case of gulpfile dependencies
* 1. pass subshell args 2. fix build order in services
1. /bin/sh requires its arguments joined into a single string unlike
cmd.
2. services/ depends on a couple of files from server/ but the order was
implicit, and changed from jakefile. Now the order is explicit in the
tsconfig.
* Fix single-quote lint
* Check for exactly one space
* Fix excess whitespace issues
* Add matchFiles test to Gulpfile
This was merged while the gulpfile was still in-progress
* Fix LKG useDebug task and newLine flag
* Update LKG
* Clean before LKG in Gulpfile
* Fix lint
* Correct the api string name
* Allow space in exec cmds
* Fix typo
* Add new APIs to protocol
* Fix bug where `exports.` was prepended to namespace export accesses
* Remove unnecessary parameter
* extract expression into function
* Add fourslash tests & address CR comments
* Fix 8549: Using variable as Jsx tagname (#9337)
* Parse JSXElement's name as property access instead of just entity name. So when one accesses property of the class through this, checker will check correctly
* wip - just resolve to any type for now
* Resolve string type to anytype and look up property in intrinsicElementsType of Jsx
* Add tests and update baselines
* Remove unneccessary comment
* wip-address PR
* Address PR
* Add tets and update baselines
* Fix linting error
* Unused identifiers compiler code (#9200)
* Code changes to update references of the Identifiers
* Added code for handling function, method and coonstructor level local variables and parameters
* Rebased with origin master
* Code changes to handle unused private variables, private methods and typed parameters
* Code changes to handle namespace level elements
* Code changes to handle unimplemented interfaces
* Code to optimize the d.ts check
* Correct Code change to handle the parameters for methods inside interfaces
* Fix for lint error
* Remove Trailing whitespace
* Code changes to handle interface implementations
* Changes to display the error position correctly
* Compiler Test Cases
* Adding condition to ignore constructor parameters
* Removing unnecessary tests
* Additional changes for compiler code
* Additional changes to handle constructor scenario
* Fixing the consolidated case
* Changed logic to search for private instead of public
* Response to PR Comments
* Changed the error code in test cases as result of merge with master
* Adding the missing file
* Adding the missing file II
* Response to PR comments
* Code changes for checking unused imports
* Test Cases for Unused Imports
* Response to PR comments
* Code change specific to position of Import Declaration
* Code change for handling the position for unused import
* New scenarios for handling parameters in lambda function, type parameters in methods, etc.
* Additional scenarios based on PR comments
* Removing a redundant check
* Added ambient check to imports and typeparatmeter reporting
* Added one more scenario to handle type parameters
* Added new scenario for TypeParameter on Interface
* Refactoring the code
* Added scenario to handle private class elements declared in constructor.
* Minor change to erro reporting
* Fix 8355: Fix emit metadata different between transpile and tsc --isolatedModule (#9232)
* Instead of returning undefined for unknownSymbol return itself
* Add Transpile unittest
* Wip - Add project tests
* Add project tests and baselines
* Update existed tests
* Add tests for emitting metadata with module targetting system
* Fix 8467: Fix incorrect emit for accessing static property in static propertyDeclaration (#8551)
* Fix incorrect emit for accessing static property in static propertyDeclaration
* Update tests and baselines
* Update function name
* Fix when accessing static property inside arrow function
* Add tests and baselines
* do not format comma/closeparen in jsxelement
* format jsx expression
* Remove extra baselines
* Fixed bugs and linting
* Added project tests for node_modules JavaScript searches
* Removed old TODO comment
* make rules optional
* Fixed the regexp for removing full paths
* Fix type of the disableSizeLimit option
* Update version to 2.0.0
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Remove unused compiler option (#9381)
* Update LKG
* Added emitHost method to return source from node modules
* Marked new method internal
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Port 9396 to release 2.0
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* Merge master into release-2.0 (#9400)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix #9402: Do not report unused identifier errors for catch variables
* getVarDate should be on the Date interface
* Defere checking unsed identifier checks
* Do not scan nodes preceding formatted region, just skip over them
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Use a deferred list to check for unused identifiers
* push checks to checkUnusedIdentifiersDeferred
* use isParameterPropertyDeclaration to test for paramter propoerties
* runtests-parallel skips empty buckets
Previously, it would enter them as buckets with no tests, which would
make our test runners run *every* test.
This was very obvious on machines with lots of cores.
* Report unused identifiers in for statements
* Do not check ambients, and overloads
* Add tests
* Consolidate type reference marking in getTypeFromTypeReference
* Handel type aliases
* Add tests
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Do not report unused errors for module augmentations
* Consolidate refernce marking in resolveName to allow marking aliases correctelly
* add tests
* Code review comments
* Only mark symbols found in a local symbol table
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Respond to PR comments
* Better name for test
* handel private properties correctelly
* Port 9426 to release 2.0
* Handel Swtich statements
check for locals on for statments
only mark private properties
* Removed one error to avoid full path issues
* Don't emit source files found under node_modules
(cherry picked from commit 5f8cf1af3e4be61037cbafd698535d32d292941f)
* Dont load JavaScript if types packages are present
(cherry picked from commit 5a45c44eb789f52ceb1aa0e23a230ecb599bfb08)
* Renamed API
(cherry picked from commit d8047b607f11cdf319284bb344282582c7c0aea0)
* Removed one error to avoid full path issues
(cherry picked from commit 5e4f13f342a75ec8f7cf65cb669bec9d6e6c5581)
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Fix #9458: exclude parameters starting with underscore from unusedParamter checks
* change variable name for strict mode
* Increase timeout from running RWC. As UWDWeb takes slightly longer now (#9454)
* Handle relative paths in tsconfig exclude and include globs
* Merge master into release branch 06/30 (#9447)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* getVarDate should be on the Date interface
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Removed one error to avoid full path issues
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Improve names of whitespace functions
* Handle relative paths in tsconfig exclude and include globs
Port 9475 to release 2.0
* add new method getEmitOutputObject to return result of the emit as object with properties instead of json string
* fix linter
* Fix PromiseLike to be compatible with es6-promise (#9484)
* Fix reading files from IOLog because previous our API captures (#9483)
* Fix reading files from IOLog because previous our API captures
* Refactoring the ioLog
* Exclude FlowSwitchClause from flow graph for case expressions
* Add regression test
* Update LKG
* Update language in comment
* Add .mailmap file
* Add authors script to generate authors from repo
* Update AUTHORS.md for release-2.0
* Update script to pass more than one argument
* Remove the unused text buffer from ScriptInfo
* Fix #9531: account for async as an contextual keyword when parsing export assignments
* Update LKG
* Swap q from a reference to an import
* Fix #9550: exclude 'this' type parameters from unusedParameters checks.
* Update comment to reflect new dependency
* Avoid putting children tags in jsdoccomment
* Parse the result of getDirectories call
* Update harness getDirectories implementation for shims
* Fix multiple Salsa assignment-declarations
Previously, all assignment-declarations needed to be of the same kind:
either all `this.p = ...` assignments or `C.prototype.p = ...`
assignments.
* Test for multiple salsa assignment-declarations
* Add test for parsed @typedef tag node shape
* Provide a symbol for salsa-inferred class types
* Update .mailmap
* Fix module tracking
* Updated test with relative import
* Fixed the node tracking and a harness bug
* fixed lint error
* Fixed implicit any
* Added missing test files
* Removed duplicate logic
* Update conflicting baseline.
PR #9574 added a baseline that #9578 caused to be changed. The two PRs
went in so close to each other that the CI build didn't catch the change
to the new test's baseline.
* Fix type of JSXTagName
* Update baselines to use double-quote
* Update baselines when emitting metadata decorator
* Update baselines for async-await function
* Update baselines for comment in capturing down-level for...of and for...in
* Add missing Transpile tests
* Remove old JS transpile baselines
* Passing program as argument in emitWorker
* Port PR#9607 transforms
* Port new JSDOC tests to use baseline
* substitute alias for class expression in statics
* Address new lint warnings
* Change name for substitution function.
2016-07-19 00:38:30 +02:00
gulp local # Build the compiler into built/local
gulp clean # Delete the built compiler
gulp LKG # Replace the last known good with the built one.
2014-09-23 21:16:12 +02:00
# Bootstrapping step to be executed when the built compiler reaches a stable state.
[Transforms] Merge master 07/11 into transform (#9697)
* Use merge2, gulp-if, gulp-newer, and more projects
* Add watch task
* Working non-inline sourcemaps for runtests
* browser tests now also loads sourcemaps from disk
* Lazypipes and better services stream management
* export interface used by other exported functions
* Make goto-definition work for `this` parameter
* Add new error for rest parameters
* Add error message for rest parameter properties
* Fix case when a document contains multiple script blocks with different base indentations.
Use the base indent size if it is greater that the indentation of the inherited predecessor
* Fix rwc-runner from breaking change in compiler (#9284)
* Signatures use JSDoc to determine optionality
* Changed implementation to use closure
* Updated tests
* Fixed linting error
* Adding Code of Conduct notice
* Don't crash when JS class property is self-referential.
Fixes #9293
* Remove stale baselines
* For optionality, check question token before JSDoc
* Accept rest parameter properties error baselines
* Change binding pattern parameter property error
* Accept binding pattern properties error baselines
* Lint
* Port the sync version diagnostics API from tsserverVS-WIP branch to 2.0
* Do copyright without gulp-if and lazypipe
* Change test comment and accept baseline
* Remove tsd scripts task from gulpfile
* Make use of module compiler option explicit, add strip internal to tsconfigs
* Remove Signature#thisType and use Signature#thisParameter everywhere
* Add Gulpfile lint to jake, fix lints
* Change reference tests to verify actual ranges referenced and not just their count
* Respond to PR comments
* Add new lint rule
* Fix object whitespace lints
* Fix case of gulpfile dependencies
* 1. pass subshell args 2. fix build order in services
1. /bin/sh requires its arguments joined into a single string unlike
cmd.
2. services/ depends on a couple of files from server/ but the order was
implicit, and changed from jakefile. Now the order is explicit in the
tsconfig.
* Fix single-quote lint
* Check for exactly one space
* Fix excess whitespace issues
* Add matchFiles test to Gulpfile
This was merged while the gulpfile was still in-progress
* Fix LKG useDebug task and newLine flag
* Update LKG
* Clean before LKG in Gulpfile
* Fix lint
* Correct the api string name
* Allow space in exec cmds
* Fix typo
* Add new APIs to protocol
* Fix bug where `exports.` was prepended to namespace export accesses
* Remove unnecessary parameter
* extract expression into function
* Add fourslash tests & address CR comments
* Fix 8549: Using variable as Jsx tagname (#9337)
* Parse JSXElement's name as property access instead of just entity name. So when one accesses property of the class through this, checker will check correctly
* wip - just resolve to any type for now
* Resolve string type to anytype and look up property in intrinsicElementsType of Jsx
* Add tests and update baselines
* Remove unneccessary comment
* wip-address PR
* Address PR
* Add tets and update baselines
* Fix linting error
* Unused identifiers compiler code (#9200)
* Code changes to update references of the Identifiers
* Added code for handling function, method and coonstructor level local variables and parameters
* Rebased with origin master
* Code changes to handle unused private variables, private methods and typed parameters
* Code changes to handle namespace level elements
* Code changes to handle unimplemented interfaces
* Code to optimize the d.ts check
* Correct Code change to handle the parameters for methods inside interfaces
* Fix for lint error
* Remove Trailing whitespace
* Code changes to handle interface implementations
* Changes to display the error position correctly
* Compiler Test Cases
* Adding condition to ignore constructor parameters
* Removing unnecessary tests
* Additional changes for compiler code
* Additional changes to handle constructor scenario
* Fixing the consolidated case
* Changed logic to search for private instead of public
* Response to PR Comments
* Changed the error code in test cases as result of merge with master
* Adding the missing file
* Adding the missing file II
* Response to PR comments
* Code changes for checking unused imports
* Test Cases for Unused Imports
* Response to PR comments
* Code change specific to position of Import Declaration
* Code change for handling the position for unused import
* New scenarios for handling parameters in lambda function, type parameters in methods, etc.
* Additional scenarios based on PR comments
* Removing a redundant check
* Added ambient check to imports and typeparatmeter reporting
* Added one more scenario to handle type parameters
* Added new scenario for TypeParameter on Interface
* Refactoring the code
* Added scenario to handle private class elements declared in constructor.
* Minor change to erro reporting
* Fix 8355: Fix emit metadata different between transpile and tsc --isolatedModule (#9232)
* Instead of returning undefined for unknownSymbol return itself
* Add Transpile unittest
* Wip - Add project tests
* Add project tests and baselines
* Update existed tests
* Add tests for emitting metadata with module targetting system
* Fix 8467: Fix incorrect emit for accessing static property in static propertyDeclaration (#8551)
* Fix incorrect emit for accessing static property in static propertyDeclaration
* Update tests and baselines
* Update function name
* Fix when accessing static property inside arrow function
* Add tests and baselines
* do not format comma/closeparen in jsxelement
* format jsx expression
* Remove extra baselines
* Fixed bugs and linting
* Added project tests for node_modules JavaScript searches
* Removed old TODO comment
* make rules optional
* Fixed the regexp for removing full paths
* Fix type of the disableSizeLimit option
* Update version to 2.0.0
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Remove unused compiler option (#9381)
* Update LKG
* Added emitHost method to return source from node modules
* Marked new method internal
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Port 9396 to release 2.0
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* Merge master into release-2.0 (#9400)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix #9402: Do not report unused identifier errors for catch variables
* getVarDate should be on the Date interface
* Defere checking unsed identifier checks
* Do not scan nodes preceding formatted region, just skip over them
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Use a deferred list to check for unused identifiers
* push checks to checkUnusedIdentifiersDeferred
* use isParameterPropertyDeclaration to test for paramter propoerties
* runtests-parallel skips empty buckets
Previously, it would enter them as buckets with no tests, which would
make our test runners run *every* test.
This was very obvious on machines with lots of cores.
* Report unused identifiers in for statements
* Do not check ambients, and overloads
* Add tests
* Consolidate type reference marking in getTypeFromTypeReference
* Handel type aliases
* Add tests
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Do not report unused errors for module augmentations
* Consolidate refernce marking in resolveName to allow marking aliases correctelly
* add tests
* Code review comments
* Only mark symbols found in a local symbol table
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Respond to PR comments
* Better name for test
* handel private properties correctelly
* Port 9426 to release 2.0
* Handel Swtich statements
check for locals on for statments
only mark private properties
* Removed one error to avoid full path issues
* Don't emit source files found under node_modules
(cherry picked from commit 5f8cf1af3e4be61037cbafd698535d32d292941f)
* Dont load JavaScript if types packages are present
(cherry picked from commit 5a45c44eb789f52ceb1aa0e23a230ecb599bfb08)
* Renamed API
(cherry picked from commit d8047b607f11cdf319284bb344282582c7c0aea0)
* Removed one error to avoid full path issues
(cherry picked from commit 5e4f13f342a75ec8f7cf65cb669bec9d6e6c5581)
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Fix #9458: exclude parameters starting with underscore from unusedParamter checks
* change variable name for strict mode
* Increase timeout from running RWC. As UWDWeb takes slightly longer now (#9454)
* Handle relative paths in tsconfig exclude and include globs
* Merge master into release branch 06/30 (#9447)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* getVarDate should be on the Date interface
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Removed one error to avoid full path issues
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Improve names of whitespace functions
* Handle relative paths in tsconfig exclude and include globs
Port 9475 to release 2.0
* add new method getEmitOutputObject to return result of the emit as object with properties instead of json string
* fix linter
* Fix PromiseLike to be compatible with es6-promise (#9484)
* Fix reading files from IOLog because previous our API captures (#9483)
* Fix reading files from IOLog because previous our API captures
* Refactoring the ioLog
* Exclude FlowSwitchClause from flow graph for case expressions
* Add regression test
* Update LKG
* Update language in comment
* Add .mailmap file
* Add authors script to generate authors from repo
* Update AUTHORS.md for release-2.0
* Update script to pass more than one argument
* Remove the unused text buffer from ScriptInfo
* Fix #9531: account for async as an contextual keyword when parsing export assignments
* Update LKG
* Swap q from a reference to an import
* Fix #9550: exclude 'this' type parameters from unusedParameters checks.
* Update comment to reflect new dependency
* Avoid putting children tags in jsdoccomment
* Parse the result of getDirectories call
* Update harness getDirectories implementation for shims
* Fix multiple Salsa assignment-declarations
Previously, all assignment-declarations needed to be of the same kind:
either all `this.p = ...` assignments or `C.prototype.p = ...`
assignments.
* Test for multiple salsa assignment-declarations
* Add test for parsed @typedef tag node shape
* Provide a symbol for salsa-inferred class types
* Update .mailmap
* Fix module tracking
* Updated test with relative import
* Fixed the node tracking and a harness bug
* fixed lint error
* Fixed implicit any
* Added missing test files
* Removed duplicate logic
* Update conflicting baseline.
PR #9574 added a baseline that #9578 caused to be changed. The two PRs
went in so close to each other that the CI build didn't catch the change
to the new test's baseline.
* Fix type of JSXTagName
* Update baselines to use double-quote
* Update baselines when emitting metadata decorator
* Update baselines for async-await function
* Update baselines for comment in capturing down-level for...of and for...in
* Add missing Transpile tests
* Remove old JS transpile baselines
* Passing program as argument in emitWorker
* Port PR#9607 transforms
* Port new JSDOC tests to use baseline
* substitute alias for class expression in statics
* Address new lint warnings
* Change name for substitution function.
2016-07-19 00:38:30 +02:00
gulp tests # Build the test infrastructure using the built compiler.
gulp runtests # Run tests using the built compiler and test infrastructure.
2014-09-23 21:16:12 +02:00
# You can override the host or specify a test for this command.
# Use host=< hostName > or tests=< testPath > .
[Transforms] Merge master 07/11 into transform (#9697)
* Use merge2, gulp-if, gulp-newer, and more projects
* Add watch task
* Working non-inline sourcemaps for runtests
* browser tests now also loads sourcemaps from disk
* Lazypipes and better services stream management
* export interface used by other exported functions
* Make goto-definition work for `this` parameter
* Add new error for rest parameters
* Add error message for rest parameter properties
* Fix case when a document contains multiple script blocks with different base indentations.
Use the base indent size if it is greater that the indentation of the inherited predecessor
* Fix rwc-runner from breaking change in compiler (#9284)
* Signatures use JSDoc to determine optionality
* Changed implementation to use closure
* Updated tests
* Fixed linting error
* Adding Code of Conduct notice
* Don't crash when JS class property is self-referential.
Fixes #9293
* Remove stale baselines
* For optionality, check question token before JSDoc
* Accept rest parameter properties error baselines
* Change binding pattern parameter property error
* Accept binding pattern properties error baselines
* Lint
* Port the sync version diagnostics API from tsserverVS-WIP branch to 2.0
* Do copyright without gulp-if and lazypipe
* Change test comment and accept baseline
* Remove tsd scripts task from gulpfile
* Make use of module compiler option explicit, add strip internal to tsconfigs
* Remove Signature#thisType and use Signature#thisParameter everywhere
* Add Gulpfile lint to jake, fix lints
* Change reference tests to verify actual ranges referenced and not just their count
* Respond to PR comments
* Add new lint rule
* Fix object whitespace lints
* Fix case of gulpfile dependencies
* 1. pass subshell args 2. fix build order in services
1. /bin/sh requires its arguments joined into a single string unlike
cmd.
2. services/ depends on a couple of files from server/ but the order was
implicit, and changed from jakefile. Now the order is explicit in the
tsconfig.
* Fix single-quote lint
* Check for exactly one space
* Fix excess whitespace issues
* Add matchFiles test to Gulpfile
This was merged while the gulpfile was still in-progress
* Fix LKG useDebug task and newLine flag
* Update LKG
* Clean before LKG in Gulpfile
* Fix lint
* Correct the api string name
* Allow space in exec cmds
* Fix typo
* Add new APIs to protocol
* Fix bug where `exports.` was prepended to namespace export accesses
* Remove unnecessary parameter
* extract expression into function
* Add fourslash tests & address CR comments
* Fix 8549: Using variable as Jsx tagname (#9337)
* Parse JSXElement's name as property access instead of just entity name. So when one accesses property of the class through this, checker will check correctly
* wip - just resolve to any type for now
* Resolve string type to anytype and look up property in intrinsicElementsType of Jsx
* Add tests and update baselines
* Remove unneccessary comment
* wip-address PR
* Address PR
* Add tets and update baselines
* Fix linting error
* Unused identifiers compiler code (#9200)
* Code changes to update references of the Identifiers
* Added code for handling function, method and coonstructor level local variables and parameters
* Rebased with origin master
* Code changes to handle unused private variables, private methods and typed parameters
* Code changes to handle namespace level elements
* Code changes to handle unimplemented interfaces
* Code to optimize the d.ts check
* Correct Code change to handle the parameters for methods inside interfaces
* Fix for lint error
* Remove Trailing whitespace
* Code changes to handle interface implementations
* Changes to display the error position correctly
* Compiler Test Cases
* Adding condition to ignore constructor parameters
* Removing unnecessary tests
* Additional changes for compiler code
* Additional changes to handle constructor scenario
* Fixing the consolidated case
* Changed logic to search for private instead of public
* Response to PR Comments
* Changed the error code in test cases as result of merge with master
* Adding the missing file
* Adding the missing file II
* Response to PR comments
* Code changes for checking unused imports
* Test Cases for Unused Imports
* Response to PR comments
* Code change specific to position of Import Declaration
* Code change for handling the position for unused import
* New scenarios for handling parameters in lambda function, type parameters in methods, etc.
* Additional scenarios based on PR comments
* Removing a redundant check
* Added ambient check to imports and typeparatmeter reporting
* Added one more scenario to handle type parameters
* Added new scenario for TypeParameter on Interface
* Refactoring the code
* Added scenario to handle private class elements declared in constructor.
* Minor change to erro reporting
* Fix 8355: Fix emit metadata different between transpile and tsc --isolatedModule (#9232)
* Instead of returning undefined for unknownSymbol return itself
* Add Transpile unittest
* Wip - Add project tests
* Add project tests and baselines
* Update existed tests
* Add tests for emitting metadata with module targetting system
* Fix 8467: Fix incorrect emit for accessing static property in static propertyDeclaration (#8551)
* Fix incorrect emit for accessing static property in static propertyDeclaration
* Update tests and baselines
* Update function name
* Fix when accessing static property inside arrow function
* Add tests and baselines
* do not format comma/closeparen in jsxelement
* format jsx expression
* Remove extra baselines
* Fixed bugs and linting
* Added project tests for node_modules JavaScript searches
* Removed old TODO comment
* make rules optional
* Fixed the regexp for removing full paths
* Fix type of the disableSizeLimit option
* Update version to 2.0.0
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Remove unused compiler option (#9381)
* Update LKG
* Added emitHost method to return source from node modules
* Marked new method internal
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Port 9396 to release 2.0
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* Merge master into release-2.0 (#9400)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix #9402: Do not report unused identifier errors for catch variables
* getVarDate should be on the Date interface
* Defere checking unsed identifier checks
* Do not scan nodes preceding formatted region, just skip over them
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Use a deferred list to check for unused identifiers
* push checks to checkUnusedIdentifiersDeferred
* use isParameterPropertyDeclaration to test for paramter propoerties
* runtests-parallel skips empty buckets
Previously, it would enter them as buckets with no tests, which would
make our test runners run *every* test.
This was very obvious on machines with lots of cores.
* Report unused identifiers in for statements
* Do not check ambients, and overloads
* Add tests
* Consolidate type reference marking in getTypeFromTypeReference
* Handel type aliases
* Add tests
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Do not report unused errors for module augmentations
* Consolidate refernce marking in resolveName to allow marking aliases correctelly
* add tests
* Code review comments
* Only mark symbols found in a local symbol table
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Respond to PR comments
* Better name for test
* handel private properties correctelly
* Port 9426 to release 2.0
* Handel Swtich statements
check for locals on for statments
only mark private properties
* Removed one error to avoid full path issues
* Don't emit source files found under node_modules
(cherry picked from commit 5f8cf1af3e4be61037cbafd698535d32d292941f)
* Dont load JavaScript if types packages are present
(cherry picked from commit 5a45c44eb789f52ceb1aa0e23a230ecb599bfb08)
* Renamed API
(cherry picked from commit d8047b607f11cdf319284bb344282582c7c0aea0)
* Removed one error to avoid full path issues
(cherry picked from commit 5e4f13f342a75ec8f7cf65cb669bec9d6e6c5581)
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Fix #9458: exclude parameters starting with underscore from unusedParamter checks
* change variable name for strict mode
* Increase timeout from running RWC. As UWDWeb takes slightly longer now (#9454)
* Handle relative paths in tsconfig exclude and include globs
* Merge master into release branch 06/30 (#9447)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* getVarDate should be on the Date interface
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Removed one error to avoid full path issues
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Improve names of whitespace functions
* Handle relative paths in tsconfig exclude and include globs
Port 9475 to release 2.0
* add new method getEmitOutputObject to return result of the emit as object with properties instead of json string
* fix linter
* Fix PromiseLike to be compatible with es6-promise (#9484)
* Fix reading files from IOLog because previous our API captures (#9483)
* Fix reading files from IOLog because previous our API captures
* Refactoring the ioLog
* Exclude FlowSwitchClause from flow graph for case expressions
* Add regression test
* Update LKG
* Update language in comment
* Add .mailmap file
* Add authors script to generate authors from repo
* Update AUTHORS.md for release-2.0
* Update script to pass more than one argument
* Remove the unused text buffer from ScriptInfo
* Fix #9531: account for async as an contextual keyword when parsing export assignments
* Update LKG
* Swap q from a reference to an import
* Fix #9550: exclude 'this' type parameters from unusedParameters checks.
* Update comment to reflect new dependency
* Avoid putting children tags in jsdoccomment
* Parse the result of getDirectories call
* Update harness getDirectories implementation for shims
* Fix multiple Salsa assignment-declarations
Previously, all assignment-declarations needed to be of the same kind:
either all `this.p = ...` assignments or `C.prototype.p = ...`
assignments.
* Test for multiple salsa assignment-declarations
* Add test for parsed @typedef tag node shape
* Provide a symbol for salsa-inferred class types
* Update .mailmap
* Fix module tracking
* Updated test with relative import
* Fixed the node tracking and a harness bug
* fixed lint error
* Fixed implicit any
* Added missing test files
* Removed duplicate logic
* Update conflicting baseline.
PR #9574 added a baseline that #9578 caused to be changed. The two PRs
went in so close to each other that the CI build didn't catch the change
to the new test's baseline.
* Fix type of JSXTagName
* Update baselines to use double-quote
* Update baselines when emitting metadata decorator
* Update baselines for async-await function
* Update baselines for comment in capturing down-level for...of and for...in
* Add missing Transpile tests
* Remove old JS transpile baselines
* Passing program as argument in emitWorker
* Port PR#9607 transforms
* Port new JSDOC tests to use baseline
* substitute alias for class expression in statics
* Address new lint warnings
* Change name for substitution function.
2016-07-19 00:38:30 +02:00
gulp runtests-browser # Runs the tests using the built run.js file. Syntax is gulp runtests. Optional
2014-09-23 21:17:34 +02:00
parameters 'host=', 'tests=[regex], reporter=[list|spec|json|< more > ]'.
[Transforms] Merge master 07/11 into transform (#9697)
* Use merge2, gulp-if, gulp-newer, and more projects
* Add watch task
* Working non-inline sourcemaps for runtests
* browser tests now also loads sourcemaps from disk
* Lazypipes and better services stream management
* export interface used by other exported functions
* Make goto-definition work for `this` parameter
* Add new error for rest parameters
* Add error message for rest parameter properties
* Fix case when a document contains multiple script blocks with different base indentations.
Use the base indent size if it is greater that the indentation of the inherited predecessor
* Fix rwc-runner from breaking change in compiler (#9284)
* Signatures use JSDoc to determine optionality
* Changed implementation to use closure
* Updated tests
* Fixed linting error
* Adding Code of Conduct notice
* Don't crash when JS class property is self-referential.
Fixes #9293
* Remove stale baselines
* For optionality, check question token before JSDoc
* Accept rest parameter properties error baselines
* Change binding pattern parameter property error
* Accept binding pattern properties error baselines
* Lint
* Port the sync version diagnostics API from tsserverVS-WIP branch to 2.0
* Do copyright without gulp-if and lazypipe
* Change test comment and accept baseline
* Remove tsd scripts task from gulpfile
* Make use of module compiler option explicit, add strip internal to tsconfigs
* Remove Signature#thisType and use Signature#thisParameter everywhere
* Add Gulpfile lint to jake, fix lints
* Change reference tests to verify actual ranges referenced and not just their count
* Respond to PR comments
* Add new lint rule
* Fix object whitespace lints
* Fix case of gulpfile dependencies
* 1. pass subshell args 2. fix build order in services
1. /bin/sh requires its arguments joined into a single string unlike
cmd.
2. services/ depends on a couple of files from server/ but the order was
implicit, and changed from jakefile. Now the order is explicit in the
tsconfig.
* Fix single-quote lint
* Check for exactly one space
* Fix excess whitespace issues
* Add matchFiles test to Gulpfile
This was merged while the gulpfile was still in-progress
* Fix LKG useDebug task and newLine flag
* Update LKG
* Clean before LKG in Gulpfile
* Fix lint
* Correct the api string name
* Allow space in exec cmds
* Fix typo
* Add new APIs to protocol
* Fix bug where `exports.` was prepended to namespace export accesses
* Remove unnecessary parameter
* extract expression into function
* Add fourslash tests & address CR comments
* Fix 8549: Using variable as Jsx tagname (#9337)
* Parse JSXElement's name as property access instead of just entity name. So when one accesses property of the class through this, checker will check correctly
* wip - just resolve to any type for now
* Resolve string type to anytype and look up property in intrinsicElementsType of Jsx
* Add tests and update baselines
* Remove unneccessary comment
* wip-address PR
* Address PR
* Add tets and update baselines
* Fix linting error
* Unused identifiers compiler code (#9200)
* Code changes to update references of the Identifiers
* Added code for handling function, method and coonstructor level local variables and parameters
* Rebased with origin master
* Code changes to handle unused private variables, private methods and typed parameters
* Code changes to handle namespace level elements
* Code changes to handle unimplemented interfaces
* Code to optimize the d.ts check
* Correct Code change to handle the parameters for methods inside interfaces
* Fix for lint error
* Remove Trailing whitespace
* Code changes to handle interface implementations
* Changes to display the error position correctly
* Compiler Test Cases
* Adding condition to ignore constructor parameters
* Removing unnecessary tests
* Additional changes for compiler code
* Additional changes to handle constructor scenario
* Fixing the consolidated case
* Changed logic to search for private instead of public
* Response to PR Comments
* Changed the error code in test cases as result of merge with master
* Adding the missing file
* Adding the missing file II
* Response to PR comments
* Code changes for checking unused imports
* Test Cases for Unused Imports
* Response to PR comments
* Code change specific to position of Import Declaration
* Code change for handling the position for unused import
* New scenarios for handling parameters in lambda function, type parameters in methods, etc.
* Additional scenarios based on PR comments
* Removing a redundant check
* Added ambient check to imports and typeparatmeter reporting
* Added one more scenario to handle type parameters
* Added new scenario for TypeParameter on Interface
* Refactoring the code
* Added scenario to handle private class elements declared in constructor.
* Minor change to erro reporting
* Fix 8355: Fix emit metadata different between transpile and tsc --isolatedModule (#9232)
* Instead of returning undefined for unknownSymbol return itself
* Add Transpile unittest
* Wip - Add project tests
* Add project tests and baselines
* Update existed tests
* Add tests for emitting metadata with module targetting system
* Fix 8467: Fix incorrect emit for accessing static property in static propertyDeclaration (#8551)
* Fix incorrect emit for accessing static property in static propertyDeclaration
* Update tests and baselines
* Update function name
* Fix when accessing static property inside arrow function
* Add tests and baselines
* do not format comma/closeparen in jsxelement
* format jsx expression
* Remove extra baselines
* Fixed bugs and linting
* Added project tests for node_modules JavaScript searches
* Removed old TODO comment
* make rules optional
* Fixed the regexp for removing full paths
* Fix type of the disableSizeLimit option
* Update version to 2.0.0
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Remove unused compiler option (#9381)
* Update LKG
* Added emitHost method to return source from node modules
* Marked new method internal
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Port 9396 to release 2.0
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* Merge master into release-2.0 (#9400)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix #9402: Do not report unused identifier errors for catch variables
* getVarDate should be on the Date interface
* Defere checking unsed identifier checks
* Do not scan nodes preceding formatted region, just skip over them
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Use a deferred list to check for unused identifiers
* push checks to checkUnusedIdentifiersDeferred
* use isParameterPropertyDeclaration to test for paramter propoerties
* runtests-parallel skips empty buckets
Previously, it would enter them as buckets with no tests, which would
make our test runners run *every* test.
This was very obvious on machines with lots of cores.
* Report unused identifiers in for statements
* Do not check ambients, and overloads
* Add tests
* Consolidate type reference marking in getTypeFromTypeReference
* Handel type aliases
* Add tests
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Do not report unused errors for module augmentations
* Consolidate refernce marking in resolveName to allow marking aliases correctelly
* add tests
* Code review comments
* Only mark symbols found in a local symbol table
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Respond to PR comments
* Better name for test
* handel private properties correctelly
* Port 9426 to release 2.0
* Handel Swtich statements
check for locals on for statments
only mark private properties
* Removed one error to avoid full path issues
* Don't emit source files found under node_modules
(cherry picked from commit 5f8cf1af3e4be61037cbafd698535d32d292941f)
* Dont load JavaScript if types packages are present
(cherry picked from commit 5a45c44eb789f52ceb1aa0e23a230ecb599bfb08)
* Renamed API
(cherry picked from commit d8047b607f11cdf319284bb344282582c7c0aea0)
* Removed one error to avoid full path issues
(cherry picked from commit 5e4f13f342a75ec8f7cf65cb669bec9d6e6c5581)
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Fix #9458: exclude parameters starting with underscore from unusedParamter checks
* change variable name for strict mode
* Increase timeout from running RWC. As UWDWeb takes slightly longer now (#9454)
* Handle relative paths in tsconfig exclude and include globs
* Merge master into release branch 06/30 (#9447)
* do not format comma/closeparen in jsxelement
* format jsx expression
* make rules optional
* Remove upper boilerplate from issue template
Our issue stats did not improve appreciably when we added the issue template. Reduce upper boilerplate text and try to make it more action-oriented
* Update issue_template.md
* new options should be optional for compatibility
* Add getCurrentDirectory to ServerHost
* Add nullchecks for typeRoots, remove getCurrentDirectory from ServerHost as it is always the installation location
* VarDate interface and relevant Date.prototype members
* Fix 9363: Object destructuring broken-variables are bound to the wrong object (#9383)
* Fix emit incorrect destructuring mapping in var declaration
* Add tests and baselines
* Add additional tests and baselines
* Fix crash in async functions when targetting ES5.
When targetting ES5 and with --noImplicitReturns,
an async function whose return type could not be determined would cause
a compiler crash.
* Add This type to lib
* getVarDate should be on the Date interface
* Don't emit source files found under node_modules
* Destructuring assignment removes undefined from type when default value is given
* Add nullcheck when calculating indentations for implort clause
* Add test
* Dont load JavaScript if types packages are present
* Renamed API
* Use checkExpression, not checkExpressionCached
* Show "<unknown>" if the name of a declaration is unavailable
* Parse `export default async function` as a declaration
* Removed one error to avoid full path issues
* Fix incorrectly-saved quote symbols in ThirdPartyNoticeText.txt
* Improve names of whitespace functions
* Handle relative paths in tsconfig exclude and include globs
Port 9475 to release 2.0
* add new method getEmitOutputObject to return result of the emit as object with properties instead of json string
* fix linter
* Fix PromiseLike to be compatible with es6-promise (#9484)
* Fix reading files from IOLog because previous our API captures (#9483)
* Fix reading files from IOLog because previous our API captures
* Refactoring the ioLog
* Exclude FlowSwitchClause from flow graph for case expressions
* Add regression test
* Update LKG
* Update language in comment
* Add .mailmap file
* Add authors script to generate authors from repo
* Update AUTHORS.md for release-2.0
* Update script to pass more than one argument
* Remove the unused text buffer from ScriptInfo
* Fix #9531: account for async as an contextual keyword when parsing export assignments
* Update LKG
* Swap q from a reference to an import
* Fix #9550: exclude 'this' type parameters from unusedParameters checks.
* Update comment to reflect new dependency
* Avoid putting children tags in jsdoccomment
* Parse the result of getDirectories call
* Update harness getDirectories implementation for shims
* Fix multiple Salsa assignment-declarations
Previously, all assignment-declarations needed to be of the same kind:
either all `this.p = ...` assignments or `C.prototype.p = ...`
assignments.
* Test for multiple salsa assignment-declarations
* Add test for parsed @typedef tag node shape
* Provide a symbol for salsa-inferred class types
* Update .mailmap
* Fix module tracking
* Updated test with relative import
* Fixed the node tracking and a harness bug
* fixed lint error
* Fixed implicit any
* Added missing test files
* Removed duplicate logic
* Update conflicting baseline.
PR #9574 added a baseline that #9578 caused to be changed. The two PRs
went in so close to each other that the CI build didn't catch the change
to the new test's baseline.
* Fix type of JSXTagName
* Update baselines to use double-quote
* Update baselines when emitting metadata decorator
* Update baselines for async-await function
* Update baselines for comment in capturing down-level for...of and for...in
* Add missing Transpile tests
* Remove old JS transpile baselines
* Passing program as argument in emitWorker
* Port PR#9607 transforms
* Port new JSDOC tests to use baseline
* substitute alias for class expression in statics
* Address new lint warnings
* Change name for substitution function.
2016-07-19 00:38:30 +02:00
gulp baseline-accept # This replaces the baseline test results with the results obtained from gulp runtests.
gulp lint # Runs tslint on the TypeScript source.
gulp help # List the above commands.
2014-07-21 19:38:22 +02:00
```
## Usage
```shell
2014-08-07 08:21:53 +02:00
node built/local/tsc.js hello.ts
2014-07-21 19:38:22 +02:00
```
2014-07-17 19:12:43 +02:00
## Roadmap
2017-03-10 19:55:50 +01:00
For details on our planned features and future direction please refer to our [roadmap ](https://github.com/Microsoft/TypeScript/wiki/Roadmap ).