Commit Graph
15498 Commits
Author SHA1 Message Date
Sheetal Nandi 5bd3f97b18 Merge branch 'master' into builderApi 2018-01-16 11:14:39 -08:00
Wesley WighamandGitHub 76d9524866 Fully deprecate the symbol display builder, reimplement in terms of node builder (#18860)
* Remove SymbolWriter, give methods to EmitTextWriter

* Unification of writers is done-ish

* Make node builder support more flags

* Write out mixins like we used to

* Accept prototype-free baselines

* Use instantiated constraint when building mapped type nodes

* Accept better mapped type baselines

* Report inaccessible this in node builder

* Turns out there was a bug in our codefix, too

* Symbol display builder usage falling

* Replace signatureToString with a nodeBuilder solution

* Replace the last internal usages of the symbol writer

* Accept semicolon additions

* Accept updated symbol baseline output

* Start using node builder for some LS operations

* Remove those pesky trailing semicolons on signatures

* Get signature printing much closer to old output

* Parameter lists should not be indented by default, especially when single-line

* Signatures up to snuff

* Type quickinfo emit is up to snuff

* Start of symbol writer replacement, needs a bit more for full compat

* Slightly mor accurate to old behavior

* Replicate qualified name type argument output correctly

* Bring back the old symbol baselines

* Mostly identical to old symbol emit now

* Perfectly matches old behavior thus far

* Replace another usage of the symbol builder

* Another usage removed

* Another usage removed

* Remove final uses of symbol display builder

* Remove implementation and types for unused symbol display builder

* Cleanup in the checker

* monomorphize new emitter code

* Replace emitWithSuffix

* Push space character to interface with writer

* List emit

* Fix lack of usage of emitExpression

* writeList, not printList

* Remove listy writes and replace with new printer calls

* Move ListFormat into types.ts

* Remove most new XToString functions in favor of node builder functions

* Accept API breaks

* Add getSymbolDisplayBuilder polyfill

* Accept updated API baseline

* Move definition to make diff easier to read

* Reinternalize some things

* Remove trailign whitespace

* Reorder for zero diff

* Remove newline

* Make shim mor eperfectly imitate old behavior

* Style feedback

* Rename reset to clear to maintain backcompat with SymbolWriter

* Fix quickfix

* Keep EmitTextWriter internal

* Remove EmitTextWriter from public API

* Mimic default name declaration emit fix

* Fix tests broken by merge

* use isFunctionLike

* Cleanup, sync TypeFormat and NodeBuilder flags

* Reorder Node initialization so pos and end are first, so a TextRange hidden class is made first to reduce future polymorphism

* Use variable instead of ternary

* Write helper for emitNodeWithWriter

* Emitter cleanup

* Cleanup whitespace, comment

* Reuse printer

* Raise error if display parts writer uses rawWrite

* Hide writer parameter through different function instead of overload, rename function in emitter

* Make less printer

* fix lint
2018-01-16 09:53:42 -08:00
Alan AgiusandAndy bcb9fd7825 fix: formatting for chaining methods (#21027)
Closes: #20996
2018-01-16 08:53:43 -08:00
csigs f4cfc9db73 LEGO: check in for master to temporary branch. 2018-01-15 11:10:12 +00:00
csigs da18a247ca LEGO: check in for master to temporary branch. 2018-01-13 05:10:05 +00:00
Wesley WighamandGitHub 2e1738bffa Enable substitution for object literal shorthand property assignments in the system transform (#21106) 2018-01-12 18:24:41 -08:00
Wesley WighamandGitHub 64305edbce Skip outer expressions when checking for super keyword in binder (#20164)
* Skip outter expressions when checking for super keyword in binder

* use TransformFlags to optimize and correct super call transforms

* Lint
2018-01-12 18:24:02 -08:00
Nathan Shively-SandersandGitHub 6f28b0ac25 Merge pull request #21156 from Microsoft/fix-diff-omit
Fix Diff and Omit
2018-01-12 16:10:37 -08:00
Nathan Shively-Sanders fd1bb9bde2 Group intersection code in getSimplifiedIndexedAccessType 2018-01-12 15:07:46 -08:00
Nathan Shively-Sanders f1622f0dc6 Use filter instead of unnecessary laziness 2018-01-12 14:56:50 -08:00
Nathan Shively-Sanders d74820d519 Remove mapped types to never from intersections
when transforming an indexed access type in order to get its constraint.
2018-01-12 14:43:31 -08:00
AndyandMohamed Hegazy b8acf8d0c4 Handle jsconfig.json in fourslash tests (#16484) 2018-01-12 14:25:33 -08:00
AndyandGitHub d2fd137d88 Add a getFullText() helper method to IScriptSnapshot (#21155)
* Add a `getFullText()` helper method to `IScriptSnapshot`

* Use a function instead of a method
2018-01-12 10:44:39 -08:00
Nathan Shively-Sanders 12b80f3183 Keep string index from intersections in base constraint of index type 2018-01-11 16:26:38 -08:00
Sheetal NandiandGitHub b529d5ba1f Merge pull request #21149 from Microsoft/tweakRecompileConditions
Do not trigger resolution cache invalidation if watch is triggered by program file emit
2018-01-11 16:17:09 -08:00
csigs c75f328697 LEGO: check in for master to temporary branch. 2018-01-11 23:10:17 +00:00
AndyandGitHub 269867f5e8 Fix bug: get merged symbol of symbol.parent before checking against module symbol (#21147) 2018-01-11 13:42:08 -08:00
Sheetal Nandi 69bb5ea8f0 Do not trigger the failed lookup location invalidation for creation of program emit files
Handles #20934
2018-01-11 12:34:58 -08:00
Sheetal Nandi c5ed8646e1 Add test where emit of the file results in invalidating resolution and hence invoking recompile 2018-01-11 12:33:38 -08:00
Andrew CaseyandGitHub e3da8fb526 Merge pull request #21131 from amcasey/GH15533
Unmangle scoped package names in import completions
2018-01-11 11:03:34 -08:00
AndyandGitHub a77c6014b3 Parse comment on @property tag and use as documentation comment (#21119)
* Parse comment on @property tag and use as documentation comment

* Fix comment parsing bug -- back up after seeing `@` character

* Add test for indent

* Don't default comment to ""
2018-01-11 10:49:39 -08:00
Nathan Shively-SandersandGitHub 658de7f80e Merge pull request #21134 from Microsoft/fix-recursive-mapped-type-infinite-recursion
Fix recursive mapped type infinite recursion
2018-01-11 10:24:23 -08:00
Nathan Shively-Sanders 16a8003011 push/popTypeResolution for circular base constraints
Instead of a custom cache `typeStack`.
2018-01-11 10:07:59 -08:00
csigs e34a4101b5 LEGO: check in for master to temporary branch. 2018-01-11 17:10:12 +00:00
Nathan Shively-Sanders 7f8ec15edd Merge branch 'master' into fix-recursive-mapped-type-infinite-recursion 2018-01-10 15:44:42 -08:00
Nathan Shively-Sanders f0ef9a08d8 getConstraintOfTypeParameter:check circularity in base constraint 2018-01-10 15:40:25 -08:00
Andrew Casey 9a4fe8eb7e Rename getPackageNameFromAtTypesDirectoryWithoutPrefix to getUnmangledNameForScopedPackage 2018-01-10 15:17:27 -08:00
Nathan Shively-SandersandGitHub 40b896a73c Merge pull request #17912 from Microsoft/fix2-getConstraintOfIndexedAccess
Fix2 get constraint of indexed access
2018-01-10 15:17:02 -08:00
Nathan Shively-Sanders 8f45373e44 Rename simplifyIndexedAccessType->getSimplifiedIndexedAccessType 2018-01-10 14:43:55 -08:00
Nathan Shively-Sanders 0b23811a56 Handle indexed mapped types in transformIndexedAccessType
Also rename transformIndexedAccessType to simplifyIndexedAccessType
2018-01-10 14:00:52 -08:00
Andrew Casey 71c92bf2f6 Fix lint error 2018-01-10 13:38:25 -08:00
AndyandGitHub 7a1deae6aa AsteriskToken should always have length 1 (#21126) 2018-01-10 12:52:35 -08:00
Nathan Shively-Sanders 7dbea0e82d Merge branch 'master' into fix2-getConstraintOfIndexedAccess 2018-01-10 12:40:35 -08:00
Wesley WighamandGitHub ee87cf409b Print the correct type in the top level chain as the message indicates (#21127) 2018-01-10 11:41:14 -08:00
Sheetal NandiandGitHub ef5b171be2 Merge pull request #21107 from Microsoft/inferredProjectTypings
Use the currentDirectory of the project as projectRootPath in the typings request
2018-01-10 11:40:30 -08:00
AndyandGitHub 102368332e Use 'append' helper more (#21125) 2018-01-10 11:31:13 -08:00
AndyandGitHub ddd8e759c1 Use 'append' helper (#21101) 2018-01-10 11:13:47 -08:00
Priyantha LankapuraandMohamed Hegazy 743d8dbe0a Fix to remove extra space between function and array index. (#21113)
https://github.com/Microsoft/TypeScript/issues/21111
2018-01-10 09:30:35 -08:00
falsandtruandMohamed Hegazy da593ca7a8 Fix WeakSet interface (#19756) 2018-01-09 22:06:06 -08:00
Wesley WighamandGitHub c9ef52b9d8 Do not always instantiate jsx signatures (#21108) 2018-01-09 17:22:19 -08:00
Sharon RolelandMohamed Hegazy c0bdd12c4c add fixAwaitInSyncFunction code fix (#21069)
* add fixAwaitInSyncFunction code fix

* Just insert the keyword

* only one codefix

* remove comment

* Change explicit return type T to Promise<T>

* Review changes

* Change codefix message
2018-01-09 17:15:08 -08:00
Stanislav IlievandMohamed Hegazy 03fd77657d Issue implicit any errors for mapped types without annotations (#21104)
* Fixed #21011

* Updated code of merged message

* Reversed message code change and moved error to it's appropriate position

* Applied suggested improvements

* Fixed wrong diagnostics message in checker

* Reverted diagnostic message change
2018-01-09 17:11:57 -08:00
Andrew Casey e48312df54 De-dup typing module completions 2018-01-09 16:54:58 -08:00
Andrew Casey db09a593d3 Unmangle package names from typings during completion 2018-01-09 16:45:42 -08:00
Sheetal Nandi 667751df2a When sending typings request use project's current directory as project root path
This ensures that we arent picking typings from folder different from the current directory for the project
2018-01-09 15:59:56 -08:00
Sheetal Nandi 90a1df9d92 Add test for failure to use correct current directory in inferred project
Test for #21040
2018-01-09 15:59:55 -08:00
Andrew Casey fa758cc357 Tidy up code to make it harder to call incorrectly 2018-01-09 15:33:54 -08:00
AndyandGitHub 8bce69e6bd Add refactoring to convert CommonJS module to ES6 module (#19916)
* Add refactoring to convert CommonJS module to ES6 module

* Code review

* includeGlobals -> excludeGlobals

* Improve handling of `module.exports = require("...")`

* Allow NoSubstitutionTemplateLiteral as argument to createLiteral
2018-01-09 13:15:47 -08:00
AndyandGitHub 9aa99b90c7 Include directories in completions for path mapping (#21103) 2018-01-09 13:15:30 -08:00
AndyandGitHub fed34cd616 Fix bug: normalize path after combining (#21100) 2018-01-09 11:54:35 -08:00