4260 Commits

Author SHA1 Message Date
Anders Hejlsberg
4f899a1691
Track recursive homomorphic mapped types by the symbol of their target (#55638) 2023-09-11 14:03:00 -07:00
Mateusz Burzyński
f424a6be05
Discriminate types with divergent read/write property types (#55576) 2023-08-30 14:55:11 -07:00
Zzzen
c5f92d4150
support generic variant setter (#55030) 2023-08-29 14:11:33 -07:00
Mateusz Burzyński
418494e4c4
Infer from parameters annotated using JSDoc (#55400) 2023-08-28 16:02:52 -07:00
Mateusz Burzyński
32ebbe05dc
Transfer all declared symbols onto the type from the interface that extends another (#55252) 2023-08-28 15:17:44 -07:00
Wesley Wigham
5ce34cafad
Avoid trying to emit anonymous classish/expando functions as assignments (#55472) 2023-08-28 12:15:53 -07:00
Oleksandr T
9d0dc77712
fix(55494): Invalid declaration with computed property using imported symbol (#55529) 2023-08-28 11:40:03 -07:00
Zzzen
788239ff87
do not report use-before-declaration error in async like IIFE initial… (#55279) 2023-08-28 10:47:32 -07:00
Mateusz Burzyński
270a471e11
Add a test case with a generic member call returning a closed over object (#55514) 2023-08-26 08:57:57 -07:00
Shinichi Katayama
98d7e0b936
Fix double error on invalid delete of readonly property (#55449) 2023-08-24 09:57:22 -07:00
Mateusz Burzyński
f07077c7ff
Fixed a redundant used before defined error (#55283) 2023-08-24 08:35:48 -07:00
Anders Hejlsberg
fcaa900012
Fix check in getDiscriminantPropertyAccess (#55464) 2023-08-23 11:43:41 -07:00
Anders Hejlsberg
6d07d5fa40
Improve inference between types with multiple signatures (#54448)
Co-authored-by: Ryan Cavanaugh <RyanCavanaugh@users.noreply.github.com>
Co-authored-by: TypeScript Bot <typescriptbot@microsoft.com>
2023-08-23 11:14:25 -07:00
Mateusz Burzyński
97d8c83bce
Fixed serialization of param names in setters from JS files (#55393) 2023-08-22 09:54:09 -07:00
Mateusz Burzyński
e99508b863
Make contextually-typed parameter with question token optional (#54960) 2023-08-21 15:01:07 -07:00
Mateusz Burzyński
3b49ce99e2
Fixed contravariant inferences from annotated optional parameters (#55397) 2023-08-16 14:49:11 -07:00
Wesley Wigham
ffec968d79
Don't track private symbol roots in other files during js declaration emit (#55390) 2023-08-16 14:13:45 -07:00
Mateusz Burzyński
cac899d44d
Widen widening literal types through compound-like assignments (#52493) 2023-08-15 16:53:11 -07:00
Mateusz Burzyński
8863e2f57a
Discriminate contextual types using shorthand properties (#55151) 2023-08-15 08:58:59 -07:00
Jake Bailey
f37d2ad669
Prevent detached diagnostics from running off the end of the file (#55381) 2023-08-15 08:29:36 -07:00
Mateusz Burzyński
16dab6d5d6
Preserve input key style of computed properties in declaration emit (#55298) 2023-08-14 13:13:42 -07:00
Mateusz Burzyński
2be814d927
Fixed contextual types of optional properties with exactOptionalPropertyTypes (#55177) 2023-08-08 14:42:50 -07:00
Ryan Cavanaugh
9a771d54e8
Skip parent error when reporting excess property checks (#55152) 2023-08-07 13:31:23 -07:00
Mateusz Burzyński
5ea2952ae5
Resolve JSX intrinsic elements to index signature symbols (#55245) 2023-08-07 11:02:23 -07:00
Ron Buckton
b1c4dc475c
Fix class name references (#55262) 2023-08-04 20:36:26 -04:00
Mateusz Burzyński
3a7a4d4b51
Error on shadowed var declarations without initializers (#55228) 2023-08-03 10:56:08 -07:00
Mateusz Burzyński
4320104404
Do not include undefined in indexed access on tuple types within range of total fixed elements (#54558) 2023-07-28 15:59:31 -07:00
Anders Hejlsberg
c69f4476af
Handle composite signatures in isResolvingReturnTypeOfSignature (#55165) 2023-07-26 15:22:58 -07:00
Anders Hejlsberg
cbf3c63ef3
Revert overly permissive indexed access constraints (#54845) 2023-07-26 07:02:40 -07:00
Wesley Wigham
970733653c
Declaration emit for inlined mapped types preserves modifier-preserving behavior (#55054) 2023-07-24 11:57:36 -07:00
Mateusz Burzyński
5128e06a9d
Fixed expando functions with symbol-only properties (#54726) 2023-07-20 13:20:47 -07:00
strager
e607c8ed81
fix(54760): Report error for 'declare type' followed by newline (#54761) 2023-07-20 12:13:08 -07:00
Mateusz Burzyński
ec48ce89da
Fixed expando functions with nullish properties (#54728) 2023-07-20 07:55:35 -07:00
Ron Buckton
97ef321fa0
Fix export of enum with same-named member (#55070) 2023-07-19 15:52:19 -04:00
Mateusz Burzyński
8f96638692
Fixed looking up assigned dynamic names on expando function expressions (#54873) 2023-07-19 09:54:25 -07:00
Jake Bailey
8a85b2aafb
Add test case for intersection/constraint bug fixed in 4.9 (#54972) 2023-07-13 16:04:42 -07:00
Ryan Cavanaugh
2516583a0c
Ensure all JSX spread properties get visited (#55008) 2023-07-13 09:46:30 -07:00
Jake Bailey
92cbf18e72
Mark return type as referenced for metadata in parameter decorators (#54994) 2023-07-12 12:25:40 -07:00
Mateusz Burzyński
bd61cbb1f3
Infer into recursive mapped type targets (#53647) 2023-07-06 13:46:46 -07:00
Joshua Chen
e4cc532e14
Make bodiless declarations an error in JS (#54439) 2023-06-30 16:53:51 -07:00
Mateusz Burzyński
a3773ec590
Avoid subtype reduction when creating a union result in discriminateTypeByDiscriminableItems (#54052) 2023-06-27 11:55:46 -07:00
Wesley Wigham
aec9e23781
Add test which would fail if SFT behavior differs in variance checking (#54756) 2023-06-23 15:32:45 -07:00
Gabriela Araujo Britto
49deff209a
Make the implicitly exported rule consistent between checker and binder (#54659) 2023-06-22 12:27:53 -07:00
Gabriela Araujo Britto
f647b11846
Use function that doesn't return unknown type (#54713) 2023-06-20 13:47:12 -07:00
Anders Hejlsberg
84d8429fb6
Add depth limiter to isConstTypeVariable function (#54624) 2023-06-16 12:48:44 -07:00
Gabriela Araujo Britto
03951f2ddf
Consider index signatures as optional properties in contextual type discrimination (#54596) 2023-06-13 09:57:51 -07:00
Anders Hejlsberg
89cbea8e16
No this type arguments in base constraints (#54536) 2023-06-12 19:07:44 -07:00
leoelm
eeed72171f
Type definitions for 'Symbols as WeakMap keys' (#76) (#54195)
Signed-off-by: Leo Elmecker <lelmeckerpla@bloomberg.net>
2023-06-09 14:20:26 -04:00
Andrew Branch
2f4962a89f
Remove implicit tests/cases/compiler path prefix from VFS test files (#54557) 2023-06-09 09:23:21 -07:00
Andrew Branch
d5a6c8edc6
Test harness fixes (#54556) 2023-06-06 17:22:33 -07:00