24631 Commits

Author SHA1 Message Date
Mohamed Hegazy
2ea0d16aa4
Merge pull request #26171 from Microsoft/portGeneratedLibFiles8-2-2
Port generated lib files
2018-08-02 15:12:17 -07:00
Mohamed Hegazy
613b07f9e4 Accept baselines 2018-08-02 14:44:37 -07:00
Mohamed Hegazy
5fbc7d92c2 Port generated lib files 2018-08-02 14:44:17 -07:00
Wesley Wigham
fefc47fae3
Flag JS Literals and ignore assignments/accesses to invalid props, instead of adding an index (#25996)
* Remove index signatures from js literals, use an object flag to indicate errors should be ignored instead

* Add focused test on the keyof problem

* Fix fourslash test

* Reenable errors with noImplicitAny flag

* Also disable excess property checks outside of noImplicitAny mode for js literals

* Edit and move comments
2018-08-02 13:40:44 -07:00
TypeScript Bot
eb763f0792 Update user baselines (#26156) 2018-08-02 13:39:11 -07:00
Mohamed Hegazy
92205cf3e4
Merge pull request #26161 from Microsoft/portGeneratedLibFiles8-2
Port generated lib files
2018-08-02 11:05:35 -07:00
Mohamed Hegazy
f220a5562b Accept baselines 2018-08-02 10:05:06 -07:00
Mohamed Hegazy
150fd90db9 Port generated lib files 2018-08-02 10:04:57 -07:00
Ryan Cavanaugh
3ab7a98ecf
Merge pull request #26121 from mattmccutchen/issue-23999
"Could not find a declaration file for module" error needs to use the unmangled package name where appropriate.
2018-08-01 20:55:31 -07:00
Sheetal Nandi
76f7ee998a
Merge pull request #25593 from Microsoft/errorInFileWithDeepImport
Report errors correctly in watch mode by invalidating errors from files referencing modules that export from changed file
2018-08-01 17:06:27 -07:00
Sheetal Nandi
06fead5987 Instead of getSymbolAtLocation use resolveExternalModuleName without error reporting 2018-08-01 16:25:22 -07:00
Mohamed Hegazy
2f525fa124
Merge pull request #26102 from Microsoft/portLibFiles731
Port generated lib files 7/31
2018-08-01 16:04:00 -07:00
Sheetal Nandi
924228b45b Merge branch 'master' into errorInFileWithDeepImport 2018-08-01 15:36:52 -07:00
James Keane
50f442f9ff Fixes #26122 - erroneous "TS2350" for js constructors called with incorrect parameters (#26124)
* Fixes #26122.

When `resolveCall` does not resolve in `resolveNewExpression`, the error should only be thrown if there is a *defined* signature that is not-void.

* Fix other baselines to remove erroneous TS2350.
2018-08-01 13:40:55 -07:00
Sheetal Nandi
8ea95023f1 Make a map for semantic diagnostics from old state 2018-08-01 13:00:26 -07:00
Sheetal Nandi
51837bb59a Make ExportedModulesFromDeclarationEmit as ReadonlyArray of symbols combining exportSpecifiers emitted and dynamic import type nodes written 2018-08-01 12:37:39 -07:00
Sheetal Nandi
f7bc8e18e8 No need for method to get the exportedModulesFromDeclarationEmit 2018-08-01 12:20:54 -07:00
Matt McCutchen
d054621477 "Could not find a declaration file for module" error needs to use the
unmangled package name where appropriate.

Add a test case for an untyped sub-module of a scoped package with
typings.  The other diagnostic message is covered by existing tests; I
guess no one looked at the baselines closely enough.

Fixes #23999.
2018-08-01 14:13:38 -04:00
Sheetal Nandi
a5a26ec939
Merge pull request #26109 from Microsoft/invalidTsconfig
Handle when property name turns out to be non string literal computed name because of errors in tsconfig file
2018-08-01 09:04:13 -07:00
Andy
9c9f3e3cf9
importFixes: When one file redirects to another, consider both for global import specifiers (#25834)
* importFixes: When one file redirects to another, consider both for global import specifiers

* Add test for #26044

* Avoid a symlinked package globally importing itself (fixes another case of #26044)

* Compare to node_modules with getCanonicalFileName
2018-07-31 17:28:56 -07:00
Andy
f326b4b7cb
Make import fix for default import mention that it's a default import (#26105) 2018-07-31 17:28:35 -07:00
Andy
1599ee2805
Always return a defined result from getTypeFromTypeNode (#26108) 2018-07-31 17:28:15 -07:00
Sheetal Nandi
3c971ed685 Handle when property name turns out to be non string literal computed name because of errors in tsconfig file
Fixes #26076
2018-07-31 17:23:55 -07:00
Mohamed Hegazy
5e15be92ac Merge remote-tracking branch 'origin/master' into portLibFiles731 2018-07-31 17:01:32 -07:00
Andy
9277ec08d7
Update more baselines from #25626 (#26107) 2018-07-31 16:34:40 -07:00
Mohamed Hegazy
5a8804fcd7 Merge remote-tracking branch 'origin/master' into portLibFiles731 2018-07-31 15:07:25 -07:00
Andy
b895614c55
Avoid trying to write the type of non-values (#25626) 2018-07-31 15:02:41 -07:00
Mohamed Hegazy
aa632582a3 Port generated lib files 2018-07-31 14:00:25 -07:00
Wesley Wigham
2edc47bc67
Fix decorated accessor emit (#26016) 2018-07-31 13:53:28 -07:00
James Keane
dfedb24f75 Jsdoc @constructor - in constructor properly infer this as class instance (#25980)
* Properly infer `this` in tagged `@constructor`s.

`c.prototype.method = function() { this }` was already supported.

This commit add support to two more kinds relying on the JSDoc
`@constructor` tag. These are:
 1. `/** @constructor */ function Example() { this }`
 2. `/** @constructor */ var Example = function() { this }`

* Update the baseline for js constructorFunctions.

C3 and C4 `this` was set as `any`, now it is properly showing as
the class type.

* Fix lint errors

* Add circular initialisers to constructo fn tests.

* Error (`TS2348`) if calling tagged js constructors

When calling a JS function explicitly tagged with either `@class` or
`@constructor` the checker should throw a TS2348 not callable error.

* Don't resolve jsdoc classes with construct sigs.

This undoes the last commit that sought to change how js functions
tagged with `@class` were inferred. For some reason, currently
unknown, giving those functions construct signatures causes issues
in property assignment/member resolution (as seen in the
`typeFromPropertyAssignment12` test case).

Instead of changing the signature resolution, the error is explicitly
generated in `resolveCallExpression` for those functions.
2018-07-31 13:52:39 -07:00
Nathan Shively-Sanders
4821f81ce7
Refactor and improve caching in getTypeOfSymbol callees (#25842)
* Refactor+improve caching in getTypeOfSymbol

1. Always cache calls to getTypeOfSymbol, even in the error case.
2. JS expando types are now cached on the original symbol as well as the
cloned symbol. Previously they were only cached on the cloned symbol.
3. Large callees of getTypeOfSymbol (variable/param/property,
func/class/enum/module, and accessors) now handle only caching and
delegate to -Worker functions whose return values are cached
unconditionally (unlike previously).

* Fix circularity detection in getTypeOfFuncClassEnumModule

Previously, successfully obtaining a type from a js special property
declaration would forget to pop the circularity detection stack and
check its value.
2018-07-31 13:07:16 -07:00
Mohamed Hegazy
ab5f04721d
Merge pull request #26101 from Microsoft/Fix26083-2
Port generated lib files
2018-07-31 13:01:04 -07:00
Mohamed Hegazy
6e6e570d57 Update ThirdPartyNoticeText to include KhronosGroup copyright notice for WebGL.
Licence added in https://github.com/KhronosGroup/WebGL/pull/2674
WebGL spec used in generating the library as of: https://github.com/Microsoft/TSJS-lib-generator/pull/533
2018-07-31 12:49:13 -07:00
Mohamed Hegazy
fe32602df6 Port generated lib files 2018-07-31 12:47:37 -07:00
Mohamed Hegazy
ff69f7f744 Port generated lib files 2018-07-31 12:20:35 -07:00
Sheetal Nandi
7bd1c8e6aa
Merge pull request #25811 from Microsoft/subDirectoryOfRootWatches
Watch subdirectories in project root instead of watching project root…
2018-07-31 11:51:16 -07:00
Andy
0d1a49c865
Ignore trailing comma when resolving signature for quick info (#25841)
* Ignore trailing comma when resolving signature for quick info

* Add test for signature help
2018-07-31 11:39:39 -07:00
Mohamed Hegazy
114cd80ed9
Merge pull request #26008 from ajafff/restbindingpattern
allow BindingPattern in BindingRestElement
2018-07-31 11:31:22 -07:00
Mohamed Hegazy
c4d79923f5
Merge pull request #25963 from ajafff/cleanup-factory
minor cleanup in factory.ts
2018-07-31 11:31:07 -07:00
Mohamed Hegazy
aaf14f47b7
Merge pull request #26065 from ajafff/createbinary-arrow-parens
createBinary: parenthesize ArrowFunction in RHS
2018-07-31 11:27:53 -07:00
Nathan Shively-Sanders
a21ac11582
In JSDoc, resolve import types as values too (#26066)
* In JSDoc, resolve import types as values too

This is something that we probably should have been doing for some time.
Fixes #26049

* Fix whitespace lint
2018-07-31 11:07:06 -07:00
Anders Hejlsberg
4bc7f1570b
Merge pull request #26063 from Microsoft/mappedTypesArraysTuples
Improved mapped type support for arrays and tuples
2018-07-31 10:54:44 -07:00
Ryan Cavanaugh
03c7a19b07
Merge pull request #26093 from Microsoft/RyanCavanaugh-patch-1
Update CONTRIBUTING.md
2018-07-31 10:24:03 -07:00
Mohamed Hegazy
59e61090df
Merge pull request #25944 from Microsoft/portGeneratedLibFiles
Port generated lib files
2018-07-31 10:20:36 -07:00
Ryan Cavanaugh
9d88798ab1
Update CONTRIBUTING.md 2018-07-31 09:29:02 -07:00
TypeScript Bot
6cd313b0e1 Update user baselines (#26088) 2018-07-31 09:22:33 -07:00
Sheetal Nandi
e2a8f996d0 Update the public API after PR #26032 2018-07-30 15:30:05 -07:00
Sheetal Nandi
b8c8e5527c
Merge pull request #26032 from Microsoft/projectReferences
Keep the configured projects referenced during original location and project get, alive till the referencing project is alive
2018-07-30 14:47:20 -07:00
Sheetal Nandi
d65cb21fcd Keep the original configured project alive created during findAllReferences 2018-07-30 14:44:21 -07:00
Sheetal Nandi
f3b0a2de06 Move the original location getter to ProjectService.
This is in anticipation of work needed to keep original projects alive
2018-07-30 14:44:21 -07:00