Commit Graph

32012 Commits

Author SHA1 Message Date
Anders Hejlsberg 304e25cf69 Add tests 2019-03-02 11:59:33 -08:00
Anders Hejlsberg 91f8fc60f1 Defer calls to generic functions returning generic functions 2019-03-02 10:34:23 -08:00
Anders Hejlsberg 8794ebdff5 Merge pull request #30179 from Microsoft/fixGetParameterNameAtPosition2
Fix out-of-bounds issue in getParameterNameAtPosition
2019-03-02 05:17:36 -10:00
Anders Hejlsberg 22a2eb8e96 Accept new baselines 2019-03-01 16:34:33 -08:00
Anders Hejlsberg d9bb869341 Add regression test 2019-03-01 16:34:23 -08:00
Anders Hejlsberg 3afe0a4d43 Fix out-of-bounds issue in getParameterNameAtPosition 2019-03-01 16:34:09 -08:00
Sheetal Nandi 276cb583b4 Accept baselines with new build system 2019-03-01 14:54:20 -08:00
Sheetal Nandi d78335581e Update gulp to build using this branch 2019-03-01 13:44:14 -08:00
Sheetal Nandi ba1dc9e303 Update LKG with the branch build 2019-03-01 13:30:08 -08:00
Sheetal Nandi 21ea0178c5 Refactor the tests 2019-03-01 13:25:16 -08:00
Gabriela Araujo Britto 98a146dcfc use getTouchingToken 2019-03-01 13:23:59 -08:00
Sheetal Nandi 8e7db4d4b3 Because .tsbuildinfo is flag now, use .tsbuildinfo just like any other output to determine if project needs rebuild 2019-03-01 13:12:19 -08:00
Sheetal Nandi 026c1dd69c Fix the build error 2019-03-01 11:45:47 -08:00
Sheetal Nandi 223d42847b Merge branch 'master' into incrementalBuildInfo 2019-03-01 11:39:44 -08:00
Sheetal Nandi 8b964f445f Fix incorrect message when incremental is false with composite projects 2019-03-01 11:35:48 -08:00
Sheetal Nandi cd195c91c6 Add options tsBuildInfoFile to provide name for the buildinfo file 2019-03-01 10:28:57 -08:00
Sheetal Nandi df9da15abb Incremental false with composite not allowed 2019-03-01 09:39:58 -08:00
Gabriela Araujo Britto cd060e75fe use interface for ValidVariableDeclaration 2019-03-01 09:17:44 -08:00
Anders Hejlsberg 35ebbece49 Minor fixes 2019-03-01 09:12:24 -08:00
TypeScript Bot f776bead4f Update user baselines (#30168) 2019-03-01 07:59:17 -08:00
Anders Hejlsberg db5ca33e6c Merge branch 'master' into deferGenericFunctionInference 2019-02-28 17:14:11 -08:00
Anders Hejlsberg 23473e021b Skip generic functions along with context sensitive arguments 2019-02-28 17:14:00 -08:00
Gabriela Araujo Britto 1f91aa1c9b remove inlineable 2019-02-28 16:55:40 -08:00
Ron Buckton 86242eed87 Always use same code path when transforming function bodies for es2015 2019-02-28 16:28:25 -08:00
Jack Williams 5bef1aa13c Add regressions for conditional types that affect parameter variance (#30146) 2019-02-28 16:14:16 -08:00
Daniel Rosenwasser e383b0d4f7 Accepted baselines. 2019-02-28 15:33:03 -08:00
Daniel Rosenwasser 00bf32ca39 Update LKG. 2019-02-28 14:35:03 -08:00
Sheetal Nandi 46ddbff7b1 Fix test by reverting change in textChanges that occured by mistake in 499bc70056 2019-02-28 14:28:27 -08:00
Sheetal Nandi 45f53c7e4b Accept baselines 2019-02-28 14:13:35 -08:00
Sheetal Nandi 5fd745d834 Update the tsconfigs 2019-02-28 14:01:40 -08:00
Wesley Wigham b1a73ab560 Resolve aliases to jsx namespace symbol (#30160) 2019-02-28 13:52:57 -08:00
Sheetal Nandi d53efdf380 Changes to generation of .tsbuildinfo:
- If composite or incremental then only the .tsbuildinfo will be generated
- if --out or --outFile the file is outputFile.tsbuildinfo
- if rootDir and outDir then outdir/relativePathOfConfigFromRootDir/configname.tsbuildinfo
- if just outDir then outDir/configname.tsbuild
- otherwise config.tsbuildinfo next to configFile
2019-02-28 13:46:26 -08:00
Anders Hejlsberg 7f5052bf7b Merge pull request #30114 from Microsoft/contextualGenericRestParameter
Improve contextual typing by generic rest parameters
2019-02-28 11:00:12 -10:00
Anders Hejlsberg 237c33b444 Merge pull request #30109 from Microsoft/circularConstraintErrors
Consistently error on circular constraints
2019-02-28 10:57:01 -10:00
Wesley Wigham a6a3ae00a6 Only collect inferences which actually have inferences into the returnMapper (#30111) 2019-02-28 12:46:24 -08:00
Gabriela Araujo Britto 617d5af67e add diagnostics message for refactor description 2019-02-28 11:22:05 -08:00
Gabriela Araujo Britto 51616a4043 use sortAndDeduplicate instead of deduplicate 2019-02-28 09:50:57 -08:00
Anders Hejlsberg b44bfaaaa8 Convert CheckMode to a flags style enum 2019-02-28 06:15:26 -08:00
Ron Buckton b02dab4e00 Remove 'this'-related tx flag usage from transformConstructorBody 2019-02-27 18:11:01 -08:00
Gabriela Araujo Britto 7fd6868f8b minor refactors to convertToNamedParameters 2019-02-27 16:42:54 -08:00
Gabriela Araujo Britto 54c7996ff5 refactor getGroupReferences 2019-02-27 16:19:01 -08:00
Sheetal Nandi ed35741b5f Merge branch 'master' into incrementalBuildInfo 2019-02-27 15:45:59 -08:00
Ryan Cavanaugh 5ec5e0466d Merge pull request #30136 from RyanCavanaugh/no-mkdir-race
Don't crash if someone created a folder while we were checking to see if it exists
2019-02-27 15:43:14 -08:00
Ryan Cavanaugh 93fa734162 Don't crash if someone created a folder while we were checking to see if it exists 2019-02-27 14:33:25 -08:00
Nathan Shively-Sanders be2db9db12 Add globalThis (#29332)
* Restore original code from bind-toplevel-this

With one or two additional comments

* Working in JS, but the symbol is not right.

Still need to

1. Make it work in Typescript.
2. Add test (and make them work) for the other uses of GlobalThis:
window, globalThis, etc.

* Check in TS also; update some tests

Lots of tests still fail, but all but 1 change so far has been correct.

* Update baselines

A couple of tests still fail and need to be fixed.

* Handle type references to globalThis

The type reference must be `typeof globalThis`. Just `globalThis` will
be treated as a value reference in type position -- an error.

* Restore former behaviour of implicitThis errors

I left the noImplicitThis rule for captured use of global this in an
arrow function, even though technically it isn't `any` any more --
it's typeof globalThis.  However, you should still use some other method
to access globals inside an arrow, because captured-global-this is super
confusing there.

* Test values with type globalThis

I ran into a problem with intersecting `Window & typeof globalThis`:

1. This adds a new index signature to Window, which is probably not
desired. In fact, with noImplicitAny, it's not desired on globalThis
either I think.
2. Adding this type requires editing TSJS-lib-generator, not this repo.

So I added the test cases and will probably update them later, when
those two problems are fixed.

* Add esnext declaration for globalThis

* Switch to symbol-based approach

I decided I didn't like the import-type-based approach.

Update baselines to reflect the difference.

* Do not suggest globals for completions at toplevel

* Add tests of element and property access

* Look up globalThis using normal resolution

globalThis is no longer constructed lazily. Its synthetic Identifier
node is also now more realistic.

* Update fourslash tests

* Add missed fourslash test update

* Remove esnext.globalthis.d.ts too

* Add chained globalThis self-lookup test

* Attempt at making globalThis readonly

In progress, had to interrupt for other work.

* Add/update tests

* Addres PR comments:

1. Add parameter to tryGetThisTypeAt to exclude globalThis.
2. Use combined Module flag instead combining them in-place.
3. SymbolDisplay doesn't print 'module globalThis' for this expressions
anymore.
2019-02-27 14:14:34 -08:00
Wesley Wigham 13c08ab32b Use identity with the permissive instantation to detect nongenric instances and disable variance probing on nongeneric instances (#29981)
* Use identity with the restrictive instantation to detect nongenric instances and disable variance probing on nongeneric instances

* Generalize to also include interfaces, add test case, still perform argument comparisons for postive comparisons if possible

* Actually accept baselines, lol

* Reduce deep nesting limit just a bit so yargs still builds

* Handle circular identities in isNonGeneric

* Use a simple traversal of the types rather than the restrictive instantiation

* Cache the bits using an existing field to further reduce any time nongeneric check takes

* Revert to using an existing mapper, use permissive > restrictive

* Revert constant change

* And revert the comment, too
2019-02-27 14:12:30 -08:00
Sheetal Nandi 03377f70b7 Apply changes in reverse order even in new API to match behaviour with internal api 2019-02-27 14:07:15 -08:00
Nathan Shively-Sanders 0d93eb9218 Merge pull request #30133 from Microsoft/revert-conditional-type-invariance
Revert "Merge pull request #27697 from mattmccutchen/issue-27118"
2019-02-27 13:25:04 -08:00
Nathan Shively-Sanders f77b43ca09 Update baselines 2019-02-27 12:42:30 -08:00
Nathan Shively-Sanders aedffe049d Revert "Merge pull request #27697 from mattmccutchen/issue-27118"
This reverts commit 2dfb6202ed, reversing
changes made to bbf559b9c7.
2019-02-27 11:50:04 -08:00