18555 Commits

Author SHA1 Message Date
Nathan Shively-Sanders
b77cb2ac45
Fix commonjs export= merging (#27368)
I'm surprised we haven't seen more of this; I suspect it's because the
mixed `module.exports=` + `export.foo=` pattern isn't that common.
However, it'll happen any time that the exported symbol is unknown;
getCommonJsExportEquals blithely clones unknownSymbol and proceeds to
stick the `exports.foo=` properties onto it.

This causes problems later, because the compiler checks for
unknownSymbol with `===`. The fix is to not stick properties onto a
clone of unknownSymbol. This makes the correct errors appear and removes
the crash.
2018-09-26 10:54:26 -07:00
Nathan Shively-Sanders
53105b3aff
Fix crash in use-before-def checking of enum tag (#27350) 2018-09-25 16:06:23 -07:00
Daniel Rosenwasser
005d202251 Bump version to 3.1.1 2018-09-25 13:54:24 -04:00
Ryan Cavanaugh
04374250cc 3.1 LKG update 2018-09-24 15:14:09 -07:00
Ryan Cavanaugh
0f176819e4
Merge pull request #27248 from Microsoft/release-3.1_fileToRename_tsserver
Ensure session passes along fileToRename
2018-09-24 14:02:31 -07:00
Wesley Wigham
fc1abbbabe
Fix non-selfclosing JSX tag contextual types (#27251) (#27314) 2018-09-24 13:51:07 -07:00
Wesley Wigham
dd9d5d1398
Limit the narrow-to-fresh rule added with boolean literals to only boolean literals (#27274) (#27319)
* Remove the narrow-to-fresh rule added with boolean literals

* Revert "Remove the narrow-to-fresh rule added with boolean literals"

This reverts commit 9f96fe5da33f9297157b326c37680a964b23d7eb.

* Only apply freshness to booleans for now

* Add largeish example from issue

* Should be AND not OR

* Add minor improvements suggested by @ahejelsberg

* Reorder conditional a bit
2018-09-24 13:51:00 -07:00
Ryan Cavanaugh
d715d835c6
Merge pull request #27254 from weswigham/port-distribution-fix
Distribute indexes of indexed access types first (#27243)
2018-09-21 13:25:40 -07:00
Wesley Wigham
317b2c2a74
Distribute indexes of indexed access types first (#27243) 2018-09-20 17:13:35 -07:00
Wesley Wigham
93f6b73c8c
Set parent pointers on manufactured reference for property initialization check (#27246) 2018-09-20 16:54:46 -07:00
Andy Hanson
a5214614ba Ensure session passes along fileToRename 2018-09-20 16:44:40 -07:00
Nathan Shively-Sanders
90d3f8b573
Only report expando use-before-def for identical control flow containers (#27199) 2018-09-18 15:28:16 -07:00
Sheetal Nandi
3c6c32bdfc Merge branch 'master' into projectReferenceInputDetection 2018-09-18 14:34:24 -07:00
Sheetal Nandi
865b3e7862
Merge pull request #27172 from Microsoft/moduleResolutionWithOutDir
Use originalFileName (fileName of input project reference file) to resolve module/typereferences/reference paths in it instead of output decl file path
2018-09-18 14:33:33 -07:00
Sheetal Nandi
4c047254e6 Ensure all the usages of compilerOptions.declaration take into account compilerOptions.composite if needed. 2018-09-18 13:53:16 -07:00
Andy
c57ff087d6
Add codefix to generate types for untyped module (#26588) 2018-09-18 11:47:29 -07:00
Sheetal Nandi
0d5aeeef22 Detect the input file of referenced project with fileNames from parsed command
Fixes #25864 and #26054
2018-09-18 11:44:16 -07:00
Sheetal Nandi
7852cf7ed3
Merge pull request #27175 from a-tarasyuk/bug/error-using-declaration-dir-with-composite
#26862: allow using declarationDir with composite option
2018-09-18 10:53:38 -07:00
Benjamin Lichtman
cd28af0260
Merge pull request #27188 from uniqueiniquity/miscAsyncFixes
Miscellaneous async code fix fixes
2018-09-18 10:53:26 -07:00
Sheetal Nandi
4009d1654b
Merge pull request #27176 from a-tarasyuk/bug/26786-no-error-when-using-allowjs-with-composite
#26786: deny using allowJs option with composite
2018-09-18 10:53:10 -07:00
Benjamin Lichtman
b850b3b88f Update test name 2018-09-18 10:26:12 -07:00
Benjamin Lichtman
b484370dcc Clean up for type precision and clarity 2018-09-18 09:34:08 -07:00
Anders Hejlsberg
6adb9d194f
Merge pull request #27157 from Microsoft/fixEmptyObjectFalsiness
Fix empty object falsiness
2018-09-18 09:26:24 -07:00
Benjamin Lichtman
e40ce24f8f
Merge pull request #27156 from uniqueiniquity/promisesAndUnderscores
Async code fix issues concerning underscores and nested promises
2018-09-18 08:34:16 -07:00
Anders Hejlsberg
c0eb742cf3 Merge branch 'master' into fixEmptyObjectFalsiness 2018-09-18 06:28:27 -07:00
Alexander T
5b5af23b41 use getEmitDeclarations helper 2018-09-18 14:46:42 +03:00
Alexander T
d11117829d allow using declarationDir with composite option 2018-09-18 14:38:48 +03:00
Alexander T
c510df1a53 deny using allowJs option with composite 2018-09-18 12:41:30 +03:00
Sheetal Nandi
d51b8d940c Use originalFileName (fileName of input project reference file) to resolve module/typereferences/reference paths in it instead of output decl file path
This also ensures that originalFileName, resolvedPath are set correctly even when we are reusing program structure
Fixes #26036
2018-09-17 19:00:30 -07:00
Sheetal Nandi
b6d90841c9 Add traceResolution option to build options 2018-09-17 18:48:57 -07:00
Wesley Wigham
e7cf9994ce
Implement readDirectory on the watch mode CompilerHost 2018-09-17 18:02:59 -07:00
Wesley Wigham
f6321bf6d5
Elaborate into arrow return expressions and array types (#27040)
* Dive into simple arrow functions when elaborating errors

* Dive into array literals as though they were tuples when elaborating, if possible

* Make parameter required

* Remove misleading errors by deeply tuplefying

* Remove lib related spans
2018-09-17 16:45:54 -07:00
Benjamin Lichtman
0cb9fd62ba
Merge branch 'master' into promisesAndUnderscores 2018-09-17 16:43:08 -07:00
Benjamin Lichtman
b2378ca40c Stop adding name of function being fixed and update baseline 2018-09-17 16:33:32 -07:00
Ryan Cavanaugh
577ee49106
Merge pull request #27139 from ajafff/config-extends
fix getExtendedConfig in commandLineParser
2018-09-17 16:29:16 -07:00
Benjamin Lichtman
76b0b2f1e8 Add test 2018-09-17 16:23:52 -07:00
Benjamin Lichtman
a73b561dd3 Ensure name for callback is generated even when it has no args 2018-09-17 16:23:47 -07:00
Ryan Cavanaugh
ba76a8412f
Merge pull request #26935 from ajafff/abstract-baseclass-property
Error accessing abstract property in constructor of abstract subclass
2018-09-17 16:23:34 -07:00
Ryan Cavanaugh
8ca01dfc9f
Merge pull request #26851 from ajafff/assert-compilerhost-readdirectory
Assert CompilerHost.readDiretory for projectReferences with include
2018-09-17 16:13:08 -07:00
Nathan Shively-Sanders
59e4770a51
Fix enum tag circular references (#27161)
* Fix enum tag circular references

Also, don't try to resolve enum tag types in Typescript.

* Improve comment
2018-09-17 16:06:17 -07:00
Benjamin Lichtman
0995869377 Stop creating empty identifier name 2018-09-17 15:53:15 -07:00
Benjamin Lichtman
1a3ff452c1 Respond to CR 2018-09-17 15:44:08 -07:00
Sheetal Nandi
e3026b0eb3
Merge pull request #27155 from Microsoft/fixIncrementalWatchProjectWithReferences
Fix incremental watch when project built has project references
2018-09-17 15:34:40 -07:00
Andy
cfd0a62357
When renaming module, ensure rename span is just the last component of the path (#27151) 2018-09-17 15:26:41 -07:00
Andy
4e3e8f5ea7
convertToAsyncFunction: Reduce casts in getTransformationBody (#27158) 2018-09-17 15:23:44 -07:00
Wesley Wigham
a55c0b7df9
Allow drawing inferences to conditional type branches (#27012)
* Allow drawing inferences to conditional type branches

* Fix lint
2018-09-17 15:19:23 -07:00
Wesley Wigham
c3b4f72498
Improve indexed access inferences (#27015) 2018-09-17 15:19:11 -07:00
Andy
bc709a87ad
Fix bug where array element is undefined (#26433)
* Fix bug where array element is undefined

* Better fix
2018-09-17 15:14:09 -07:00
Ryan Cavanaugh
a5326e68d0
Merge pull request #26866 from NMinhNguyen/allowSyntheticDefaultImports-if-esModuleInterop
Enable allowSyntheticDefaultImports if esModuleInterop is enabled
2018-09-17 15:03:28 -07:00
Andy
fc54a2c0a7
Include triggerSpan in protocol.RenameInfo (#27160) 2018-09-17 15:00:41 -07:00