19911 Commits

Author SHA1 Message Date
Ryan Cavanaugh
e0f136bf7b
Port #30856 & #30963 (#30966)
* Merge pull request #30856 from Microsoft/nonInferrableType

Add a proper non-inferrable type

* Merge pull request #30963 from Microsoft/fixObjectFlagsPropagation

Fix object flags propagation
2019-04-16 11:15:32 -07:00
Ryan Cavanaugh
4c6ac3e211
Port PR #30877 (#30904)
Ports #30877 to release-3.4
2019-04-16 11:02:46 -07:00
Tyler Jones
95e649a15a Cherry-pick bug fix #30758 for 3.4 (#30881)
<!--
Thank you for submitting a pull request!

Here's a checklist you might find useful.
* [ ] There is an associated issue that is labeled 'Bug' or 'help wanted'
* [ ] Code is up-to-date with the `master` branch
* [ ] You've successfully run `gulp runtests` locally
* [ ] There are new or updated unit tests validating the change

Refer to CONTRIBUTING.MD for more details.
  https://github.com/Microsoft/TypeScript/blob/master/CONTRIBUTING.md
-->

Fixes #30647

Upstream bugfix cherry-picked for patch release on version 3.4.

See original bug for discussion: https://github.com/Microsoft/TypeScript/issues/30647#issuecomment-481802052
2019-04-12 14:54:01 -07:00
Andrew Branch
1871048f74 Merge pull request #30734 from andrewbranch/bug/30664 (#30892)
Fall back from `globalReadonlyArrayType` to `globalArrayType` when transpiling
2019-04-12 14:07:10 -07:00
Nathan Shively-Sanders
30f04a92a6 Bump version to 3.4.3 2019-04-08 09:51:53 -07:00
Nathan Shively-Sanders
b71f80351b Create an ATA cache per patch version of TS
Previously, we created one cache per minor version. This changes allows
us to invalidate the ATA cache by releasing a new patch version of
Typescript.
2019-04-08 09:41:22 -07:00
Benjamin Lichtman
4b009e3098
Update versions and LKG for 3.4.2 (#30741)
* Update versions to 3.4.2

* LKG update for 3.4.2
2019-04-03 15:12:03 -07:00
Benjamin Lichtman
783538cd98
VS IntelliCode-related changes (#30731) (#30737)
* ensure configurePlugin gives a response

* Update tests

* Update baseline

* Enable global plugin loading for external projects

* Fix lint errors
2019-04-03 13:55:33 -07:00
Ryan Cavanaugh
f0188c1c22 Update versions to 3.4.1 2019-03-27 13:04:56 -07:00
Ryan Cavanaugh
ae62bdc119 Merge branch 'master' into release-3.4 2019-03-27 13:02:58 -07:00
Wesley Wigham
b7881a26a0 Unify substitution type any handling into costruction and instantiation (#30592)
* Unify substitution type `any` handling into costruction and instantiation

* Strengthen supertype reduction check to reduce breakage

* Rename conditional type fields per convention

* Explicitly handle anyish signatures in compareSignaturesRelated so strict variance doesnt kill subtyping

* Allow tuple expansions to an `any` rest to be considered an `any` signature as well
2019-03-27 12:55:17 -07:00
Sheetal Nandi
7457e5d9fe Pull out the incremental compilation into a function so we can test it 2019-03-26 14:28:05 -07:00
Sheetal Nandi
021444a248 Make it as api so we can test it 2019-03-26 14:25:56 -07:00
Sheetal Nandi
e28869d888 Ensure that from tsc with --incremental sets source file version
Fixes #30588 and #30589
2019-03-26 14:25:47 -07:00
Sheetal Nandi
684c531386 Always assert that source files are versioned when program is used with Builder 2019-03-26 11:55:12 -07:00
Nathan Shively-Sanders
32054f1c31
Forbid accessing block-scoped variables on globalThis (#30510)
* Forbid accessing const & let on globalThis

It's just an error; you still get the type of the property.

* Disallow access of blockscoped vars on globalThis

Also change Array, Function, String, et al from `const` to `var` so that
they remain accessible via `globalThis.String`.

* Update baselines after lib.d.ts change

Note especially the change in redefineArray, which is now allowed as
long as you provide a type that is assignable to ArrayConstructor.

* Remove blockscoped vars from typeof globalThis

Unlike forbidding them, this removes the properties entirely.

Unfortunately, this means that accessing these properties is only an
error with noImplicitAny, and that error is quite confusing.

Let's discuss our options. I see 3:

1. Forbid access of block-scoped vars as properties (in all flag
settings), but leave them on the type. Simple to implement.
2. Remove block-scoped vars from the globalThis type. Has the bad
error/flag behaviour described above, but simple to implement.
3. Remove block-scoped vars from the globalThis type. Also, forbid
accessing them by executing another resolveName lookup for failed
property accesses on globalThisSymbol. If the second lookup returns a
blockscoped var, issue an error instead of falling back to the index
signature. This seems too complex to me.

* Update baselines

* Better error for block-scoped usage on globalThis

So that value-space references have as clear an error as type-space
references.

* Update fourslash tests

* Fix semi-colon lint

* Don't copy so much when filtering blockscoped vars
2019-03-25 14:07:48 -07:00
Gabriela Araujo Britto
0f6f3b79b5
Fix find all references of inherited constructor (#30514)
* recursively look for inherited constructor references

* add test

* remove outdated comment

* add tests

* move function

* improve tests

* minor refactor

* fix convert params refactoring to deal with inherited constructor calls

* simplify refactor test
2019-03-22 15:17:50 -07:00
Wesley Wigham
1639a5a2c2
Handle huge unions better in createUnionOrIntersectionProperty (#30411)
* Handle huge unions better in createUnionOrIntersectionProperty

* Mimic first-in-wins behavior of pushIfUnique to retain order

* !props -> props.length === 0 (why dont we warn on that ffs)

* Avoid collection into an array if there are no properties
2019-03-22 09:56:39 -07:00
Wesley Wigham
b86dea03f2
Fix crash caused by cyclic defaults (#30532) 2019-03-21 18:27:14 -07:00
Sheetal Nandi
8da384d32a Report output file not built error for any module resolution that ends up to source file
Fixes #29918
2019-03-21 08:55:12 -07:00
Ron Buckton
2932421370
Merge pull request #30495 from Microsoft/fix29427
Adjust offset to account for 'this' parameter when emitting parameter decorators
2019-03-20 12:56:50 -07:00
Sheetal Nandi
800f7a3447
Merge pull request #30414 from Microsoft/jsSyntaxCompletions
Filter ts only keywords from js file completion
2019-03-20 10:38:11 -07:00
Sheetal Nandi
e94b7d8b37 Check extended tsconfig time with oldest output time to report not upto date 2019-03-19 17:19:15 -07:00
Sheetal Nandi
8cef0c592a Merge branch 'master' into tsconfigChangeDetection 2019-03-19 16:54:25 -07:00
Ron Buckton
cfb0adeadf
Merge pull request #28609 from ajafff/class-decorator-generics
resolve TypeReference in class decorator at parent of class
2019-03-19 15:46:58 -07:00
Ron Buckton
a0f122baa7
Merge pull request #30494 from Microsoft/fix29561
Prevent substitution of 'super' in async super helper
2019-03-19 15:42:20 -07:00
Sheetal Nandi
519426407b
Merge pull request #30492 from Microsoft/prettyBuild
Ensure --pretty with --build is passed correctly to create reporters
2019-03-19 12:11:09 -07:00
Ron Buckton
07bec2893f Adjust offset to account for 'this' parameter when emitting parameter decorators 2019-03-19 11:46:18 -07:00
Ron Buckton
e19c7f1a45 Prevent substitution of 'super' in async super helper 2019-03-19 11:35:18 -07:00
Sheetal Nandi
0bcc46a4e3 Ensure --pretty with --build is passed correctly to create reporters
Fixes #30282
2019-03-19 10:53:06 -07:00
Ron Buckton
4e54f30fb4 Fix _superIndex emit when super access captured in async arrow 2019-03-19 10:20:08 -07:00
Gabriela Araujo Britto
84087d0e0a
Use shorthand property assignment in convert parameters to object (#30468)
* create shorthand property assignment in argument object when possible

* add shorthand property assignment test

* don't offer refactor on jsdoc comment

* add jsdoc test

* improve jsdoc test

* use crlf
2019-03-19 09:28:09 -07:00
Ron Buckton
4fed54232a Fix _superIndex emit when super access captured in async arrow 2019-03-18 18:08:58 -07:00
Wesley Wigham
9e28a811c5
Remove circularity fallback deferral in getConditionalType (#30470) 2019-03-18 16:35:41 -07:00
Sheetal Nandi
e5521630fb
Merge pull request #30439 from Microsoft/forceBuild
Passing --force option to build, builds project from start
2019-03-18 11:15:25 -07:00
Gabriela Britto
10b9051624
Fix convert to named parameters rest parameter tuple (#30286)
* check if rest parameter is of tuple type in isOptionalParameter

* expose isArrayType and isTupleType in checker

* don't offer refactor if rest parameter type is neither array nor tuple type

* add tests for rest parameters

* fix tests for renamed refactor

* remove unnecessary conditional operator
2019-03-18 10:31:38 -07:00
Masahiro Wakame
18b8625ef8 fix error on globalThis type extend (#30460)
* Add test for extend globalThis

* Fix compile aborting
2019-03-18 09:18:27 -07:00
Anders Hejlsberg
d0646a629a
Merge pull request #30084 from dragomirtitian/GH-26563
Improved argument description for parameters originating from tuples
2019-03-18 06:14:52 -10:00
Anders Hejlsberg
02963b4e17
Merge pull request #30443 from Microsoft/fixTypeInferenceLogicError
Fix logic error introduced in #30334
2019-03-18 08:49:16 -07:00
Anders Hejlsberg
36cf12fe0a
Merge pull request #30363 from Microsoft/fixTypeParameterPromotion
Higher order type parameter promotion fixes
2019-03-18 08:48:03 -07:00
Anders Hejlsberg
3dd0814069 Make IdentifierTypePredicate.parameterIndex index into signature.parameters 2019-03-17 15:58:13 -10:00
Nathan Shively-Sanders
658798032b
Fix globalThis completions (#30441)
* Fix, but with test not quite right

* Add missing completions to test

* Remove out-of-date comment
2019-03-15 19:10:39 -07:00
Anders Hejlsberg
084d14a399 Fix logic error introduced in #30334 2019-03-15 15:57:22 -10:00
Sheetal Nandi
52641c531a Passing --force option to build, builds project from start 2019-03-15 16:04:10 -07:00
Sheetal Nandi
cabf72b514 Revert "Passing --force option to build, builds project from start"
This reverts commit 434fa94bdca63be629304bfde231ffa25d6754ed.
2019-03-15 16:03:36 -07:00
Sheetal Nandi
434fa94bdc Passing --force option to build, builds project from start 2019-03-15 16:02:00 -07:00
Sheetal Nandi
ce490e1c77 Check oldest output time with tsconfig time to see if its out of date
Fixes #26503
2019-03-15 15:45:51 -07:00
Sheetal Nandi
34a7b7bbd8 implements not a keyword in js 2019-03-15 15:21:38 -07:00
Sheetal Nandi
e78f52d246 Add more information when getValidSourceFile cant find the file in question.
Log for #30180
2019-03-15 15:03:45 -07:00
Daniel Rosenwasser
5a8176e0c6 Merge remote-tracking branch 'origin/master' into release-3.4 2019-03-15 13:17:44 -07:00