Anders Hejlsberg
4638c685b1
Properly reduce intersections of string literal and template literal types ( #41162 )
...
* Properly reduce single element intersections
* Add regression test
* Accept new baselines
2020-10-19 13:05:29 -07:00
Anders Hejlsberg
3918e6c535
Move anonymous type instantiation cache from AST node to root type ( #41084 )
...
* Move anonymous type instantiation cache from AST node to root type
* Use "root" type reference as cache location for deferred type references
* Add test
Co-authored-by: Andrew Branch <andrew@wheream.io>
2020-10-19 07:26:48 -07:00
Wesley Wigham
ce1947b0be
Merge pull request #41070 from weswigham/use-minimal-endings-in-bundled-declaration-emit
...
Use minimal endings when generating declarations for js
2020-10-14 15:29:50 -07:00
Eli Barzilay
5b2fba3334
transformGenerators: handle CommaListExpression
...
Uses essentially the same code as `visitCommaExpression` (which was
moved, to keep both together and close to
`visit{Right,Left}AssociativeBinaryExpression`).
Fixes #40614 .
2020-10-14 15:58:13 -04:00
Wesley Wigham
84726be01a
Merge pull request #40597 from weswigham/allow-instanceof-array-to-narrow-readonly-array
...
Handle the mapping between Array and ReadonlyArray in isTypeDerivedFrom
2020-10-13 15:08:17 -07:00
Alex T
417b8a9481
fix(29881): infer quote preference for property access conversion in completions ( #41041 )
2020-10-13 10:06:27 -07:00
Wesley Wigham
1cdb621257
Use minimal endings when generating declarations for js
2020-10-12 16:01:32 -07:00
Andrew Branch
83d02a5f05
Fix auto imports for export default edge cases ( #41068 )
2020-10-12 15:42:58 -07:00
Andrew Branch
a09a7144e7
Fix crash resolving ImportTypeNode in JSDoc ( #40838 )
2020-10-12 09:33:39 -07:00
Alex T
05be3b421a
fix: show deprecated error for alias ( #40961 )
2020-10-12 08:45:08 -07:00
Nathan Shively-Sanders
a109b5d5c8
Fix relative paths in commonjs decl emit w/property access ( #40986 )
...
```js
const x = require('./foo').y
```
was incorrectly using the unmangled require path as the temp name in
emit:
```
import ./foo_1 = require('./foo')
import x = ./foo_1.y
```
It now uses the imported identifier:
```
import x_1 = require('./foo')
import x = x_1.y
```
Discovered while fixing #37832
2020-10-09 16:32:57 -07:00
Wesley Wigham
aee18e0725
Merge pull request #41017 from weswigham/fix-unchecked-cast-crash
...
Fix crash due to unchecked cast in addImplementationSuccessElaboration
2020-10-09 15:58:08 -07:00
Andrew Branch
4766a2e5a3
Fix overlapping changes when un-qualifying import use site within transformed export ( #40987 )
...
* Fix overlapping changes when un-qualifying import use site within transformed export
* Break long line
2020-10-09 13:24:18 -07:00
Wesley Wigham
39c2a09b1f
Fix crash due to unchecked cast in addImplementationSuccessElaboration
2020-10-09 10:53:59 -07:00
Wesley Wigham
a49099fd15
Add elaboration when call fails all overloads but succeeds against the implementation signature
2020-10-08 14:55:14 -07:00
Alex T
23c5f9260c
fix(3758): show completion for object literals in an assignment pattern ( #40976 )
2020-10-08 12:27:53 -07:00
Nathan Shively-Sanders
cf3e28ea66
Revert "feat(40197): handle uncalled function checks in binary expressions ( #40260 )"
...
This reverts commit eaf4f46c172f9899306765e38a36c9517e04b676.
2020-10-07 14:14:49 -07:00
Alex T
eaf4f46c17
feat(40197): handle uncalled function checks in binary expressions ( #40260 )
2020-10-07 14:06:42 -07:00
Nathan Shively-Sanders
4283428906
Fix export binding of namespaced typedefs ( #40980 )
...
The binder incorrectly rejected implicit namespace declarations in
typedefs.
2020-10-07 13:21:02 -07:00
Wesley Wigham
4dc7e59248
Merge pull request #40953 from weswigham/improve-completions-large-literal-perf
...
Improve the performance of requesting completions within a massive array literal
2020-10-07 12:44:20 -07:00
Anders Hejlsberg
f34220980b
Add isDeeplyNestedType logic to getResolvedBaseConstraint ( #40971 )
...
* Add isDeeplyNestedType logic to getResolvedBaseConstraint
* Accept new baselines
* Add regression test
* Accept new baselines
* Fix lint issue
2020-10-07 05:50:06 -07:00
Mauro Bringolf
48ad25d4b9
Add currency sign to NumberFormatOptions type ( #40709 )
2020-10-06 16:30:09 -07:00
Daniel Rosenwasser
3766be1bde
Test indexed access to this on intersections ( #40967 )
...
* Added test.
* Accepted baselines.
2020-10-06 14:18:44 -07:00
Wesley Wigham
87c83306dd
Use suggested command, add now-fixed log
2020-10-06 12:56:51 -07:00
Wesley Wigham
f8382d720f
Add pyright user test
2020-10-06 12:37:05 -07:00
Alex T
5c55fc0a21
fix(40817): suggest import for default exported alias ( #40845 )
2020-10-06 09:52:35 -07:00
Simon Chan
fc0eed3795
lib: remove length field from SharedArrayBuffer ( #40858 )
...
* fix(lib): SharedArrayBuffer does not have a `length` field
* Revert formatting change.
* test: add tests for SharedArrayBuffer.length
Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>
2020-10-06 08:27:56 -07:00
Alex T
1e49ad8370
fix(40685): fix generating docs for arrow functions ( #40728 )
2020-10-06 07:50:08 -07:00
Vincent Boivin
57661607e9
fix(40929) PromiseConstructor error message for newer versions of ECMAScript ( #40931 )
...
* Update package-lock.json
* Update package-lock.json
* Update package-lock.json
* Update package-lock.json
* Fixes #40929
Co-authored-by: TypeScript Bot <typescriptbot@microsoft.com>
2020-10-05 16:38:12 -07:00
Wesley Wigham
da57f9876e
Improve the performance of requesting completions within a massive array literal
2020-10-05 14:42:10 -07:00
Tiago Tristao
1191e2e731
Fix class expression from being assignable if types don't match ( #40660 )
...
* Fix class expression from being assignable if types don't match
* Fix class expression from being assignable if types don't match
2020-10-05 13:21:38 -07:00
Wesley Wigham
77df9faabf
Merge pull request #40886 from weswigham/error-on-anonymous-type-with-nonlocal-unique-symbol
...
Limit when we allow nested unique symbols to be serialized
2020-10-05 11:59:45 -07:00
Andrew Branch
6ee4a6b7f0
Skip past module.exports = { Foo } in go-to-defintion on 'Foo' ( #40835 )
...
* Add test
* Skip shorthand property assignments of module.exports in go-to-definition
* Skip past shorthand property assignments in module.exports in go-to-definition
* Revert WIP change
* Fix comment typo
Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
2020-10-05 11:47:19 -07:00
Andrew Branch
736363b427
Use other files when necessary to determine import style in JS ( #40879 )
...
* Use other files when necessary to determine import style in JS
* Fix existing tests
2020-10-05 11:39:20 -07:00
Orta Therox
dd84bc1dc9
Handles creating a reasonable AST when destructuring into a parens'd expresssion ( #40115 )
...
* Handles creating a lgical AST when destructuring into a parens
* Adds an async example
2020-10-05 14:12:47 -04:00
Vincent Boivin
61aadc4ce2
fix(40320): Better errors when using properties/methods from newer versions of ECMAScript ( #40650 )
...
* Update package-lock.json
* Suggesting a library for a missing property/method
* Added more types and added tests
* Added more tests to cover all the latest features
* Added bigintarrays and dataview methods
* Fixed typo in template
* Transform old error message to use 2nd template slot
* Removed test that has been split up between es2015 and es2016+
* Use empty arrays and remove unnecessary function call
* merge
* Added early bail-out and updated baselines
* Implemented early bail-out (misread)
Co-authored-by: TypeScript Bot <typescriptbot@microsoft.com>
2020-10-02 16:47:37 -07:00
Richa Deshmukh
b748484031
#40763 Fixed: Bad error message when forgetting a comma in an array of templ… ( #40907 )
...
* #40763 Bad error message when forgetting a comma in an array of template strings
* Code review fixes
2020-10-02 15:37:59 -07:00
Wesley Wigham
6a5527e0c6
Properly compare path prefixes when generating module paths ( #40885 )
2020-10-02 10:50:30 -07:00
Nathan Shively-Sanders
477e4b1a9d
Fix function merged with export as namespace sourcefile ( #40908 )
...
Previously it crashed because the function-checking code didn't expect
a node with no parent.
2020-10-02 10:50:12 -07:00
Nathan Shively-Sanders
b8ebad48d7
Fix recursive types in @typedef ( #40861 )
...
* Fix reference types in @typedef
Previously this code path was broken and untested. Fortunately the fix
is simple.
* add test case from #40234
* update baselines
2020-10-02 08:46:42 -07:00
Wesley Wigham
b86dc34386
Limit when we allow nested unique symbols to be serialized to when their declaration is within the same file as the context
2020-10-01 15:20:01 -07:00
Wesley Wigham
e9465c5de5
Properly compare path prefixes when generating module paths
2020-10-01 14:56:32 -07:00
Wesley Wigham
da86332120
Limit export= js declaration emit to only json source files ( #40882 )
2020-10-01 14:55:24 -07:00
Wesley Wigham
3ea81e652a
Ensure whitespace jsx elements are not counted when determining if a jsx child is the only child ( #40839 )
...
* Ensure whitespace jsx elements are not counted when determining if a jsx child is the only child
* Use filtered children count for deciding constructor used
* Accept updated baselines post-merge
2020-10-01 14:36:44 -07:00
Andrew Branch
5fbe9806db
Fix noUncheckedIndexedAccess with tuple rest types and generic index types ( #40681 )
...
* Fix noUncheckedIndexedAccess for tuple rest elements
* Defer inclusion of undefined for generic indexed access types
* Create separate IndexedAccessTypes depending on whether --noUncheckedIndexedAccess applies
* Undo accidental export
* Parenthesize for clearer precedence
2020-10-01 13:56:13 -07:00
Anders Hejlsberg
950dad9c29
Propagate wildcard types in template literal type construction ( #40875 )
...
* Propagate wildcard types in template literal type construction
* Add regression test
* Accept new baselines
2020-10-01 13:36:08 -07:00
Wesley Wigham
b93da6291a
Emit non-identifier enum member references as typeof parent[some name] ( #40679 )
2020-10-01 13:06:17 -07:00
Anders Hejlsberg
4538e7352f
Properly distribute over unions in keyof for mapped types with as clause ( #40837 )
...
* Properly distribute over unions in keyof mapped types with as clause
* Accept new baselines
* Add regression test
* Accept new baselines
2020-10-01 09:36:51 -07:00
Andrew Casey
35111231f7
Merge pull request #40755 from amcasey/SpreadLimit
...
Enforce a size limit in getSpreadType
2020-09-30 13:44:59 -07:00
Andrew Branch
a301001420
Use correct program when checking for reexports from AutoImportProviderProject ( #40843 )
2020-09-30 09:32:19 -07:00