12504 Commits

Author SHA1 Message Date
Ron Buckton
d224ee02d7 Free up space in the TransformFlags enum 2018-09-27 17:55:07 -07:00
Ron Buckton
9cf201c512
Merge pull request #27204 from Microsoft/fixPerIteration
Fix per-iteration bindings in for-loop head
2018-09-27 13:23:03 -07:00
Wesley Wigham
7bf382e73f
Allow empty files lists in tsconfigs with an extends member (#27383) 2018-09-27 12:40:29 -07:00
Anders Hejlsberg
d7219b21c2
Merge pull request #27357 from Microsoft/fixBivariantInferences
Make contravariant inferences only from pure contravariant positions
2018-09-26 14:03:59 -07:00
Nathan Shively-Sanders
98ec1e8730
Fix commonjs export= merging (#27368) (#27371)
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 12:40:30 -07:00
Sheetal Nandi
1a63c67e8a
Merge pull request #27260 from valera-rozuvan/fix-27086
Fix 27086. Ignore directories starting with a dot.
2018-09-26 11:11:37 -07:00
Nathan Shively-Sanders
4fac5f26dc
Fix crash in use-before-def checking of enum tag (#27350) (#27354) 2018-09-26 09:05:18 -07:00
Anders Hejlsberg
f59229bf22 Only add unique inferences to candidate arrays 2018-09-26 06:54:37 -07:00
Anders Hejlsberg
5e55118076 Only make contravariant inferences from pure contravariant positions 2018-09-25 18:07:51 -07:00
Daniel Rosenwasser
e1fd0ea53e Bump version to 3.2. 2018-09-25 16:48:03 -04:00
Anders Hejlsberg
5510e0755e Merge branch 'master' into typedBindCallApply
# Conflicts:
#	tests/baselines/reference/tsxTypeArgumentPartialDefinitionStillErrors.errors.txt
#	tests/baselines/reference/wrappedAndRecursiveConstraints4.errors.txt
2018-09-24 16:38:39 -07:00
Wesley Wigham
e1c8dc2768
Limit the narrow-to-fresh rule added with boolean literals to only boolean literals (#27274)
* 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 12:37:13 -07:00
Wesley Wigham
b7fc092404
Fix non-selfclosing JSX tag contextual types (#27251) 2018-09-24 10:38:39 -07:00
Valera Rozuvan
8bd7f4e3f8 Fix 27086. Ignore directories starting with a dot. 2018-09-23 14:48:48 +03:00
Ron Buckton
5fb39769ad
Merge pull request #27271 from Microsoft/fix24570-3
Fix iterated type in for-await-of
2018-09-21 12:28:18 -07:00
Ron Buckton
112fe6e2cc Fix iterated type in for-await-of 2018-09-21 10:40:45 -07:00
Ron Buckton
63adc5fb40 Add contextual typing for await operand 2018-09-21 10:32:18 -07:00
Ron Buckton
80dba4d63b Support promise-like types in contextual return type of async function 2018-09-21 10:32:00 -07:00
Wesley Wigham
219bb44b4d
Distribute indexes of indexed access types first (#27243) 2018-09-20 17:03:34 -07:00
Wesley Wigham
b56854a532
Set parent pointers on manufactured reference for property initialization check (#27246) 2018-09-20 16:54:01 -07:00
Wesley Wigham
928bff996f
Limit inference from apparent types to one level deep (#27225)
* Limit inference from apparent types to one level deep

* Rename marker & use booleanness not ===

* Undo typo
2018-09-20 15:00:17 -07:00
Andy
67d8263b30
Fix error message for class type in JSDoc missing type arguments (#27222) 2018-09-19 12:57:55 -07:00
Ron Buckton
efe76c4375 Fix per-iteration bindings in for-loop head 2018-09-18 15:58:18 -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
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
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
Ryan Cavanaugh
577ee49106
Merge pull request #27139 from ajafff/config-extends
fix getExtendedConfig in commandLineParser
2018-09-17 16:29:16 -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
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
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
Nathan Shively-Sanders
c9f190283e
Fix non-toplevel prototype assignment (#27096)
* Fix non-toplevel prototype assignment

binder was using the wrong node to lookup the containing class type for
prototype assignment, so it incorrectly put the prototype declaration on
the class' symbol.

This correction to the binder in turn required a change in
getJSClassType in the checker. It now has to look at the "prototype"
property for the prototype instead of looking on the class symbol's exports
(which makes no sense).

* Refactor per PR suggestion
2018-09-17 13:07:05 -07:00