b687caf | Nathan Shively-Sanders | 30 August 2018, 23:16:58 UTC | No excess property error for spread properties (#26798) That is, properties in an object literal type that came from a spread assignment never cause an excess property error. | 30 August 2018, 23:16:58 UTC |
cd37e41 | Wesley Wigham | 30 August 2018, 22:45:06 UTC | Make finer-grained errors get reported on function arguments (#26784) | 30 August 2018, 22:45:06 UTC |
2deb318 | Ryan Cavanaugh | 30 August 2018, 20:36:11 UTC | Merge pull request #26788 from ajafff/remove-useless-condition remove useless condition | 30 August 2018, 20:36:11 UTC |
d3f9601 | Nathan Shively-Sanders | 30 August 2018, 20:18:50 UTC | Fix namespace expando merge (#26690) * Allow JSContainers to merge with namespaces Expando functions marked with JSContainer previously failed to merge with namespaces. This change adds JSContainer to ValueModuleExcludes, allowing this kind of merge. * Improve symbol flags to fix namespace/expando merging Calls to bindPropertyAssignment now provide which special assignment kind they originated from. This allows better symbol flags to be set: 1. Property assignments get the FunctionScopedVariable flag, since they are equivalent to a `namespace` exporting a `var`. 2. Prototype property assignments get the Method flag if the initialiser is functionlike, and Property otherwise. 3. Prototype assignments get the flag Property. (3) is still not entirely correct (it's missing the Prototype flag), but is what existed previously. I'll try adding the Prototype flag to see whether it changes any baselines. * Add cross-file merge test * Update missed baselines * Namespace declarations are primary for merging purposes Also, property-assignments go back to being property declarations, not function-scoped variable declarations * Revert unneeded changes * Revert unneeded changes (in a codefix this time) * Put JSContainer on all assignment declarations This allows most of the new special-case merge code to go away. It now uses the JSContainer special-case code, which already exists. * Missed comment * Fix extra newline lint | 30 August 2018, 20:18:50 UTC |
b2850ee | Klaus Meinhardt | 30 August 2018, 20:13:39 UTC | remove useless condition | 30 August 2018, 20:13:39 UTC |
828279b | Sheetal Nandi | 30 August 2018, 17:41:00 UTC | Merge pull request #26777 from Microsoft/recursiveTypeSignatureHelp Add test for signature help with recursive type | 30 August 2018, 17:41:00 UTC |
bf6d265 | Sheetal Nandi | 30 August 2018, 17:12:04 UTC | Add test for signaure help with recursive type Test for #26155 | 30 August 2018, 17:12:04 UTC |
20a2b0c | Tim Schaub | 30 August 2018, 17:01:33 UTC | Ignore newline and asterisk when parsing JSDoc typedef (#26775) | 30 August 2018, 17:01:33 UTC |
038f665 | Wenlu Wang | 30 August 2018, 15:48:49 UTC | fix lookup regression again (#26762) * fix lookup regression again * add test case | 30 August 2018, 15:48:49 UTC |
c327ab4 | Nathan Shively-Sanders | 30 August 2018, 15:39:39 UTC | Make SymbolFlags.ObjectLiteral a Value (#26752) Previously it was a Type We couldn't think of a way to observe this change since object literals don't merge with anything. Ideas? | 30 August 2018, 15:39:39 UTC |
d5b7edb | Sheetal Nandi | 30 August 2018, 05:55:01 UTC | Merge pull request #26751 from Microsoft/declarationEmitWithComposite Correctly mark visibile nodes when declaration isnt explicitly turned on but composite is true | 30 August 2018, 05:55:01 UTC |
a0d61a5 | csigs | 30 August 2018, 04:11:05 UTC | LEGO: Merge pull request 26765 LEGO: Merge pull request 26765 | 30 August 2018, 04:11:05 UTC |
d604199 | csigs | 30 August 2018, 04:10:39 UTC | LEGO: check in for master to temporary branch. | 30 August 2018, 04:10:39 UTC |
d37caf1 | Andy | 30 August 2018, 00:43:22 UTC | Remove unnecessary `getContainingClass` calls (#26753) | 30 August 2018, 00:43:22 UTC |
cea49df | Andy | 29 August 2018, 23:38:42 UTC | Completion for tuple index doesn't need to include quotes (#26750) | 29 August 2018, 23:38:42 UTC |
f78dc2a | Andy | 29 August 2018, 23:18:56 UTC | importFixes: Only provide a fix using the best module specifier for a given module (#26738) | 29 August 2018, 23:18:56 UTC |
262fa3a | Sheetal Nandi | 29 August 2018, 23:16:01 UTC | Correctly mark visibile nodes when declaration isnt explicitly turned on but composite is true Fixes #26669 | 29 August 2018, 23:17:24 UTC |
38a85cf | Sheetal Nandi | 29 August 2018, 22:47:52 UTC | Add test to verify #26669 where declaration output is incorrect when declaration flag is not set explicitly in options | 29 August 2018, 23:14:55 UTC |
a287915 | Anders Hejlsberg | 29 August 2018, 22:45:43 UTC | Merge pull request #26746 from Microsoft/noUnionInferences Don't infer unions for disjoint callback parameter candidates | 29 August 2018, 22:45:43 UTC |
29dbabe | Nathan Shively-Sanders | 29 August 2018, 22:06:38 UTC | In JS, fix contextual type of this assignments (#26743) in object literal methods inside an object literal with a type annotation. Note that this does not change: 1. The type of `this` in object literal methods. 2. The fact that this-property assignments are still declarations. They just don't block contextual typing like most declarations do. This change is a bit expensive. It first calls getThisContainer, which walks the tree upward. Then it calls checkThisExpression, which will usually call getContextualType on the object literal method. If the new code then returns true, it will proceed to redo much of that work. Calling checkThisExpression should not cause incorrect circularity failures; we only have to inspect the shape of the object literal and not the types of its properties to determine its type. | 29 August 2018, 22:06:38 UTC |
7b4f864 | Andy | 29 August 2018, 22:06:26 UTC | moduleSpecifiers: Simpler criteria for preferring relative path vs baseUrl (#25803) * moduleSpecifiers: Simpler criteria for preferring relative path vs baseUrl * Don't unconditonally use a path mapping | 29 August 2018, 22:06:26 UTC |
02e1a32 | Sheetal Nandi | 29 August 2018, 21:43:22 UTC | Merge pull request #26742 from Microsoft/addShortWatch Fixes issue when --build --watch queue becomes incorrect because it isnt reset correctly | 29 August 2018, 21:43:22 UTC |
b17aaf0 | Anders Hejlsberg | 29 August 2018, 21:15:09 UTC | Accept new baselines | 29 August 2018, 21:15:09 UTC |
c48c363 | Anders Hejlsberg | 29 August 2018, 21:02:15 UTC | Update tests | 29 August 2018, 21:02:15 UTC |
529ed2d | Anders Hejlsberg | 29 August 2018, 20:42:20 UTC | Stop inferring unions for disjoint callback parameter inferences | 29 August 2018, 20:42:20 UTC |
838110a | Ron Buckton | 29 August 2018, 20:24:12 UTC | Merge pull request #26741 from Microsoft/gulpWatch Fix overlapping test runs in 'gulp watch' | 29 August 2018, 20:24:12 UTC |
90abaa1 | Sheetal Nandi | 29 August 2018, 20:06:35 UTC | Reset the build queue correctly Fixes issue reported in #26545#issuecomment-416961260 | 29 August 2018, 20:10:55 UTC |
111300c | Ron Buckton | 29 August 2018, 19:57:05 UTC | Fix overlapping test runs in 'gulp watch' | 29 August 2018, 19:57:05 UTC |
d6ff1a7 | Sheetal Nandi | 29 August 2018, 19:23:52 UTC | Move parsing of build options to commandLineParsing so it can be tested and it lines with other commandline parsing | 29 August 2018, 19:52:27 UTC |
068840d | Sheetal Nandi | 29 August 2018, 18:58:38 UTC | Add shortname for watch option | 29 August 2018, 18:58:38 UTC |
d066e1e | Anders Hejlsberg | 29 August 2018, 18:39:04 UTC | Merge pull request #26676 from Microsoft/complexRestParameterTypes Improve checking of complex rest parameter types | 29 August 2018, 18:39:04 UTC |
0263027 | Andy | 29 August 2018, 18:37:31 UTC | codeFixInferFromUsage: Assume that using `x[0]` means that `x` is an array (#26739) * codeFixInferFromUsage: Assume that using `x[0]` means that `x` is an array * Remove unnecessary '||' with non-falsy LHS If only there were some kind of type-checker for JavaScript that could detect this sort of thing | 29 August 2018, 18:37:31 UTC |
f7e45c5 | Andrew Casey | 29 August 2018, 18:19:13 UTC | Merge pull request #26650 from amcasey/LogPid Substitute process ID for "PID" in log file names | 29 August 2018, 18:19:13 UTC |
0feeb48 | Andy | 29 August 2018, 17:53:32 UTC | Make generator function name a completion list blocker (#26640) * Make generator function name a completion list blocker * Improvements for class/object members * Separate KeywordCompletionFilter.None and .All | 29 August 2018, 17:53:32 UTC |
9100047 | Sheetal Nandi | 29 August 2018, 17:21:25 UTC | Merge pull request #26723 from Microsoft/buildCleanSourcemaps Add js source maps to list of outputs when doing --build | 29 August 2018, 17:21:25 UTC |
4affe1f | csigs | 29 August 2018, 16:10:58 UTC | LEGO: Merge pull request 26736 LEGO: Merge pull request 26736 | 29 August 2018, 16:10:58 UTC |
983b0b4 | csigs | 29 August 2018, 16:10:32 UTC | LEGO: check in for master to temporary branch. | 29 August 2018, 16:10:32 UTC |
a2d2f5a | Anders Hejlsberg | 29 August 2018, 14:51:07 UTC | Merge branch 'master' into complexRestParameterTypes | 29 August 2018, 14:51:07 UTC |
f67d7e0 | Wenlu Wang | 29 August 2018, 13:58:55 UTC | add test case and fix regression (#26726) | 29 August 2018, 13:58:55 UTC |
9f4ae5f | Anders Hejlsberg | 29 August 2018, 13:57:21 UTC | Fix typo | 29 August 2018, 13:57:21 UTC |
30f611b | Nathan Shively-Sanders | 29 August 2018, 02:57:39 UTC | Add survey event (#26455) * Start adding survey event * Add surveyReady event * Remove old notes * Move event, simplify type, add test 1. Move the survey event to sendProjectTelemetry so that it happens on open instead of on editing tsconfig. 2. Remove URL from the survey type; VS code should control this information. 3. Add test based on large files event test. I'm not sure it's in the right place, though. * Fix tests and update API baseline * Split survey sending from telemetry Based on tests requested during review. * Add additional assertion | 29 August 2018, 02:57:39 UTC |
cff04e6 | Andy | 28 August 2018, 23:43:14 UTC | Ensure JsonSourceFile has all the non-optional properties of SourceFile (#26162) * Ensure JsonSourceFile has all the non-optional properties of SourceFile * Set properties in parseSourceFile | 28 August 2018, 23:43:14 UTC |
199d496 | Sheetal Nandi | 28 August 2018, 23:19:01 UTC | Merge pull request #26716 from Microsoft/lazyConfiguredProjectsFromExternalProject Add option --lazyConfiguredProjectsFromExternalProject to enable lazy load of configured projects referenced by external project | 28 August 2018, 23:19:01 UTC |
723e64b | Sheetal Nandi | 28 August 2018, 22:36:09 UTC | Add js source maps to list of outputs when doing --build Fixes #26619 | 28 August 2018, 23:17:10 UTC |
03bb5d1 | Sheetal Nandi | 28 August 2018, 22:47:17 UTC | Use protocol.UserPreferences in server to store UserPreferences | 28 August 2018, 22:53:00 UTC |
52fef42 | Sheetal Nandi | 28 August 2018, 21:49:00 UTC | Merge branch 'master' into lazyConfiguredProjectsFromExternalProject | 28 August 2018, 21:49:00 UTC |
fc90b8f | Sheetal Nandi | 28 August 2018, 21:08:59 UTC | lazyConfiguredProjectsFromExternalProject as userpreference instead of command line option | 28 August 2018, 21:41:22 UTC |
9106fdb | Andy | 28 August 2018, 21:21:09 UTC | Support signature help for type parameters of a type (#26702) | 28 August 2018, 21:21:09 UTC |
552bd1c | Andy | 28 August 2018, 20:04:11 UTC | Support import fix/completions for `export =` (#25708) | 28 August 2018, 20:04:11 UTC |
b94061c | Andy | 28 August 2018, 20:03:24 UTC | getEditsForFileRename: Avoid changing import specifier ending (#26177) * getEditsForFileRename: Avoid changing import specifier ending * Support .json and .jsx extensions * Restore typeRoots tests * Fix json test * When --jsx preserve is set, import ".tsx" file with ".jsx" extension * Support ending preference in UserPreferences | 28 August 2018, 20:03:24 UTC |
96e6140 | Sheetal Nandi | 28 August 2018, 18:13:02 UTC | Add option --lazyConfiguredProjectsFromExternalProject to enable lazy load of configured projects referenced by external project Fixes #26696 | 28 August 2018, 19:49:09 UTC |
3931b72 | Andy | 28 August 2018, 18:43:45 UTC | noUnusedLocals: Destructuring assignment is a write (#26365) * noUnusedLocals: Destructuring assignment is a write * Code review * Clarify test | 28 August 2018, 18:43:45 UTC |
530a530 | Sheetal Nandi | 28 August 2018, 18:43:35 UTC | Merge pull request #26590 from Microsoft/buildRefactoring Refactor ts build and report watch status when doing --build --watch | 28 August 2018, 18:43:35 UTC |
6c2e851 | Ryan Cavanaugh | 28 August 2018, 18:33:58 UTC | Merge pull request #26317 from Kingwl/parameter-initializer-lookup-fix add special check for parameter initializer lookup if targeting es2015+ | 28 August 2018, 18:33:58 UTC |
868cf3e | Sheetal Nandi | 28 August 2018, 18:21:35 UTC | renames per PR feedback | 28 August 2018, 18:21:35 UTC |
b183418 | Andy | 28 August 2018, 18:06:14 UTC | Fix bug: Don't go to *any* constructor signature for jsx element (#26715) | 28 August 2018, 18:06:14 UTC |
1b5de9d | Andy | 28 August 2018, 17:25:00 UTC | Uncomment tests fixed with #23631 (#26700) | 28 August 2018, 17:25:00 UTC |
1b1ca9e | Andy | 28 August 2018, 16:41:46 UTC | Memoize collecting set of all imported packages (#26263) | 28 August 2018, 16:41:46 UTC |
c3eb8e8 | csigs | 28 August 2018, 16:11:03 UTC | LEGO: Merge pull request 26713 LEGO: Merge pull request 26713 | 28 August 2018, 16:11:03 UTC |
fb0cd6c | csigs | 28 August 2018, 16:10:36 UTC | LEGO: check in for master to temporary branch. | 28 August 2018, 16:10:36 UTC |
8869f39 | 王文璐 | 28 August 2018, 08:41:26 UTC | accept more case | 28 August 2018, 08:41:26 UTC |
d758075 | 王文璐 | 09 August 2018, 08:40:11 UTC | add special check for parameter initializer lookup if targeting es2015+ | 28 August 2018, 07:02:28 UTC |
ac0d5da | Anders Hejlsberg | 28 August 2018, 01:30:16 UTC | Merge pull request #26679 from Microsoft/improveGetTypeOfExpression Improve control flow analysis of type assertions | 28 August 2018, 01:30:16 UTC |
bd40583 | Anders Hejlsberg | 28 August 2018, 01:14:43 UTC | Merge pull request #26698 from Microsoft/indexedAccessConstraints Improve indexed access type relations | 28 August 2018, 01:14:43 UTC |
7223945 | Andy | 28 August 2018, 00:03:30 UTC | Use array helper in computeCommonSourceDirectory and remove two unnecessary tests (#26416) | 28 August 2018, 00:03:30 UTC |
a2e4a28 | Nathan Shively-Sanders | 27 August 2018, 23:52:35 UTC | Get [type] parameter types from @type tag (#26694) * Get [type] parameter types from @type tag Previously only the return type was used in cases like this: ```js /** @type {<T>(param?: T) => T | undefined} */ function g(param) { return param; } ``` Now the type parameters from the type tag are used, and the compiler gets the type of the parameter by using the position in the signature of the type tag. Fixes #25618 * Fix split ifs according to PR comments | 27 August 2018, 23:52:35 UTC |
d369cec | Anders Hejlsberg | 27 August 2018, 23:06:26 UTC | Accept new baselines | 27 August 2018, 23:06:26 UTC |
9f83958 | Anders Hejlsberg | 27 August 2018, 23:06:17 UTC | Add tests | 27 August 2018, 23:06:17 UTC |
4cf5774 | Andy | 27 August 2018, 23:04:02 UTC | Add tsserver test for completions and avoid excess properties (#25622) | 27 August 2018, 23:04:02 UTC |
eeabd52 | Anders Hejlsberg | 27 August 2018, 22:50:26 UTC | Examine all constraints of indexed access types in relations | 27 August 2018, 22:50:26 UTC |
9938f31 | csigs | 27 August 2018, 22:11:04 UTC | LEGO: Merge pull request 26697 LEGO: Merge pull request 26697 | 27 August 2018, 22:11:04 UTC |
dfd6aa8 | csigs | 27 August 2018, 22:10:39 UTC | LEGO: check in for master to temporary branch. | 27 August 2018, 22:10:39 UTC |
b50c37d | Nathan Shively-Sanders | 27 August 2018, 21:12:14 UTC | No assert for nameless typedefs (#26695) The assert is over-optimistic and should be removed until we can parse every possible thing that people might put in a JSDoc type position. Fixes #26693 | 27 August 2018, 21:12:14 UTC |
0dbad04 | Wesley Wigham | 27 August 2018, 20:32:01 UTC | Distribute indexed accesses when simplifying them (#26281) * unknownify accesses * Move to simplify to break less with fewer changes * Accept baselines for now * Always propegate any as an index type * Fix flow control in the presence of simplifiable types * Add spy repro from #25181 * Retain errorType when it is used as a marker for the lack of a constraint * Small refinement * Add new test * Move most potentially recursive types from isIdenticalTo into structuredTypeRelatedTo to match the non-identity relations * Fix nits * Doesnt need to be undefineable at all | 27 August 2018, 20:32:01 UTC |
0a59da1 | Andy | 27 August 2018, 17:30:25 UTC | In pickLongestCandidateSignature, instantiate using inferred type arguments (#26646) | 27 August 2018, 17:30:25 UTC |
6419240 | Nathan Shively-Sanders | 27 August 2018, 17:29:53 UTC | Declaration emit includes function properties (#26499) * Declaration emit includes function properties It does this by printing the type as an object literal type: ```ts function f() { } f.p = 1 ``` Appears in a d.ts as ```ts declare var f: { (): void; p: number; } ``` It would also be possible to represent it as a namespace merge. I'm not sure which is better. ```ts declare function f(): void; declare namespace f { export var p: number; } ``` In order to avoid a private-name-used error (though I think it was actually *unused*), I also had to change the nodeBuilder code to match. This is arguably harder to read. So it's possible that I should instead keep the nodeBuilder version as `typeof f` and make an exception for private name use. * Emit namespace merge instead of object type This makes the change smaller, overall. * Fix isJSContainerFunctionDeclaration+namespace merges Also improve emit style to match other namespace emit. * Add isPrivate + test case from PR comments | 27 August 2018, 17:29:53 UTC |
e411381 | Andy | 27 August 2018, 16:38:52 UTC | Fix bug: Don't let empty signature documentation override other documentation (#26638) | 27 August 2018, 16:38:52 UTC |
61f6d03 | TypeScript Bot | 27 August 2018, 15:54:02 UTC | Update user baselines (#26687) | 27 August 2018, 15:54:02 UTC |
a1c373c | Anders Hejlsberg | 26 August 2018, 01:25:20 UTC | Accept new baselines | 26 August 2018, 01:25:20 UTC |
0c759b8 | Anders Hejlsberg | 26 August 2018, 01:25:14 UTC | Add regression test | 26 August 2018, 01:25:14 UTC |
e852627 | Anders Hejlsberg | 26 August 2018, 01:25:02 UTC | Add early out for type assertions in getTypeOfExpression | 26 August 2018, 01:25:02 UTC |
73ec596 | Anders Hejlsberg | 26 August 2018, 00:29:08 UTC | Merge pull request #26678 from Microsoft/fixReturnOnlyInference Fix logic that infers from return types only | 26 August 2018, 00:29:08 UTC |
ed97443 | Anders Hejlsberg | 25 August 2018, 23:09:25 UTC | Accept new baselines | 25 August 2018, 23:09:25 UTC |
09bc750 | Anders Hejlsberg | 25 August 2018, 23:09:18 UTC | Add regression test | 25 August 2018, 23:09:18 UTC |
9c551a1 | Anders Hejlsberg | 25 August 2018, 23:09:08 UTC | Ignore parameters when inferring from return type only signature | 25 August 2018, 23:09:08 UTC |
349bee9 | Anders Hejlsberg | 25 August 2018, 14:55:21 UTC | Accept new baselines | 25 August 2018, 14:55:21 UTC |
676892e | Anders Hejlsberg | 25 August 2018, 14:55:13 UTC | Add tests | 25 August 2018, 14:55:13 UTC |
0e1b998 | Anders Hejlsberg | 25 August 2018, 14:29:34 UTC | Accept new baselines | 25 August 2018, 14:29:34 UTC |
f5f6133 | Anders Hejlsberg | 25 August 2018, 14:29:15 UTC | Revise complex rest parameter handling in relations and inference | 25 August 2018, 14:29:15 UTC |
b5998d9 | Ryan Cavanaugh | 24 August 2018, 22:54:34 UTC | Merge pull request #26625 from ajafff/revert-destructuring-private-computed-name Revert #26360: Don't error on destructure of private property with computed property syntax | 24 August 2018, 22:54:34 UTC |
4e44b08 | Anders Hejlsberg | 24 August 2018, 20:30:05 UTC | Accept new baselines | 24 August 2018, 20:30:05 UTC |
9ef65ef | Anders Hejlsberg | 24 August 2018, 20:29:28 UTC | Use getSpreadArgumentType when relating to complex rest parameter types | 24 August 2018, 20:29:28 UTC |
0043ba1 | Nathan Shively-Sanders | 24 August 2018, 17:30:39 UTC | Allow weak type detection for intersection sources (#26668) Previously, intersections were only allowed as targets, but this was just an artifact of the original implementation, which operated inside the structural part of isRelatedTo. Removing this restriction catches subtle bugs in React user code, where a function named `create` returns a mapped type whose types are all branded numbers. The display of these properties, for some original type `T`, is not `number & { __ }` but the much-less-obvious `RegisteredStyle<T>`. | 24 August 2018, 17:30:39 UTC |
bdb7c35 | TypeScript Bot | 24 August 2018, 15:30:21 UTC | Update user baselines (#26664) | 24 August 2018, 15:30:21 UTC |
8ba5019 | Wenlu Wang | 24 August 2018, 04:31:53 UTC | try get add missing member return type from context (#26250) * try get add missing member return type from context * support contextual type | 24 August 2018, 04:31:53 UTC |
65da7e9 | csigs | 24 August 2018, 04:11:02 UTC | LEGO: Merge pull request 26654 LEGO: Merge pull request 26654 | 24 August 2018, 04:11:02 UTC |
0f04e43 | csigs | 24 August 2018, 04:10:34 UTC | LEGO: check in for master to temporary branch. | 24 August 2018, 04:10:34 UTC |
f3ceebe | Andy | 24 August 2018, 01:22:07 UTC | Fix duplicate completions bugs (#26648) * Fix duplicate completions bugs * Remove old TODO | 24 August 2018, 01:22:07 UTC |
e2eda0a | Andrew Casey | 24 August 2018, 00:56:29 UTC | Substitute process ID for "PID" in log file names This will help us solve the problem of logs getting clobbered when the server restarts. | 24 August 2018, 00:56:29 UTC |
6ea2278 | Nathan Shively-Sanders | 23 August 2018, 18:27:03 UTC | Get symbol at location for class expressions/keywords (#26636) * getSymbolAtLocation understands class expressions Previously it did not. * Update baselines | 23 August 2018, 18:27:03 UTC |