Anders Hejlsberg
3bfbe68b5a
Merge pull request #23806 from Microsoft/objectAndUnconstrainedTypeParameter
...
Unconstrained type variable not assignable to 'object'
2018-05-01 13:24:16 -07:00
Anders Hejlsberg
1de8c65678
Unconstrained type parameter not assignable to 'object'
2018-05-01 12:38:29 -07:00
Andy
cee4289f58
Add code fix to convert 'require' in a '.ts' file to an 'import' ( #23711 )
...
* Add code fix to convert 'require' in a '.ts' file to an 'import'
* Only add suggestion for modules
* Revert "Only add suggestion for modules"
This reverts commit b1a728fdacacf7089e8995f6a5caddac27ef5e62.
2018-05-01 09:24:02 -07:00
Nathan Shively-Sanders
5ea4d3b2bb
No error for require, module.exports or exports in Javascript ( #23743 )
...
* No error for require
Still errors for module and exports, and require's type is now
incorreclty 'any'; I broke module resolution somehow. Needs
investigation.
* module/exports symbols+update isCommonJsRequire
Everything passes the tests but the code can be improved
* Update baselines
* Cleanup
* Update baselines of new tests
* Get rid of exports symbol
It wasn't doing anything anyway.
2018-04-30 15:47:59 -07:00
Nathan Shively-Sanders
7cda045d52
Always export typedefs ( #23723 )
...
* Always export typedefs
This actually just required deleting a check in declareModuleMembers
and checking for external AND commonjs modules in a couple of places.
However, while experimenting with this feature, I discovered that even
previously-exported typedefs would only be exported if they came after a
commonjs export node. So I added a commonjs check to the pass in the
parser. It will not catch nested module.exports, but it will catch
top-level assignments.
The new test tests both changes.
* Post-bind typedef instead of pre-checking for commonjs
* Duplicate identifier errors
* Fix class type reference resolution+update baselines
* Move to a type-based check for duplicate identifiers
2018-04-30 14:55:26 -07:00
Mohamed Hegazy
0bbf4d5c48
Merge pull request #23785 from dsifford/dsifford-lib-intl-fix
...
add lib.es2018.intl + fix lib.es2017.intl
2018-04-30 14:45:15 -07:00
Wesley Wigham
0c244d86b3
Add used-before-declaration errors for class refs inside computed names ( #23784 )
2018-04-30 12:55:30 -07:00
Sheetal Nandi
96b2cf8aba
Merge pull request #23597 from Microsoft/inferredProjects
...
Do not remove inferred project till next file open so we can reuse them
2018-04-30 12:54:15 -07:00
Sheetal Nandi
cec5aafcbf
Merge pull request #23783 from Microsoft/tscWatchInfo
...
More detailed log during watch in tsc showing what the watcher is invoked for.
2018-04-30 12:53:59 -07:00
Derek P Sifford
cc0c82c014
add lib.es2018.intl + fix lib.es2017.intl
...
closes #23691
2018-04-30 15:17:00 -04:00
Mohamed Hegazy
2c956af927
Merge pull request #23664 from a-tarasyuk/feature/strictPropertyInitialization-can-not-be-used-without-strictNullChecks
...
Add warn that user can not use --strictPropertyInitialization without --strictNullChecks
2018-04-30 12:10:54 -07:00
Anders Hejlsberg
83bc70dd63
Merge pull request #23782 from Microsoft/controlFlowNullTypeAndLiteral
...
Control flow for null type vs. literal
2018-04-30 11:38:00 -07:00
Anders Hejlsberg
672d2144fa
Check for null type instead of null keyword
2018-04-30 10:43:43 -07:00
Sheetal Nandi
33ba2509a2
Merge pull request #23753 from Microsoft/emptyOptions
...
Handle the test case when tsconfig file changes without needing to update the program
2018-04-30 10:42:14 -07:00
Anders Hejlsberg
fc2f16ca3c
Treat unconstrained T[K] the same as unconstrained T
2018-04-29 07:46:57 -07:00
Anders Hejlsberg
25d5952096
Merge pull request #23751 from Microsoft/reduceIntersectionTypes
...
Remove redundant primitive types from intersections
2018-04-28 11:42:56 -07:00
Anders Hejlsberg
5a7eb1cbc8
Fix typo
2018-04-28 08:24:41 -07:00
Daniel Rosenwasser
443c1c7965
Merge pull request #23327 from Microsoft/importDotMeta
...
Support 'import.meta'
2018-04-27 20:52:28 -07:00
Sheetal Nandi
2e4f37849c
More logs in tsc.js
2018-04-27 18:49:16 -07:00
Daniel Rosenwasser
161535bc84
Check for both 'module' and 'target'.
2018-04-27 17:51:18 -07:00
Daniel Rosenwasser
bc0d3e1297
Look for top-level imports/exports before diving into the tree.
2018-04-27 17:25:23 -07:00
Sheetal Nandi
44066d6c7a
Handle the test case when tsconfig file changes without needing to update the program
...
Fixes #23687
2018-04-27 16:59:50 -07:00
Wesley Wigham
8c5ad2429a
Relax switch-case narrowing restrictions ( #23522 )
...
* Allow switch case narrowing even when individual clauses are nonunit
* And remove unit type restriction
* Rename
2018-04-27 16:30:43 -07:00
Wesley Wigham
47385b29e0
Actually visit expression node on empty destructuring assignment ( #23744 )
2018-04-27 15:55:53 -07:00
Wesley Wigham
6d3b6e21da
Add implicit any errors for destructuring computed names which aren't late bound and have no corresponding index ( #23489 )
...
* Add implicit any errors for destructuring computed names which arent late bound and have no corresponding index
* Add string fallback for number
* Expand test case, make functionality mimic other (buggy) areas
* Add symbol name errors to bring in line with new indexing rules
2018-04-27 15:55:32 -07:00
Anders Hejlsberg
cfe7284876
Merge branch 'master' into reduceIntersectionTypes
2018-04-27 15:54:17 -07:00
Anders Hejlsberg
6c28da328e
Merge pull request #23672 from Microsoft/intersectionWithUnionConstraint
...
Type relationships for intersections with union constraints
2018-04-27 15:53:00 -07:00
Anders Hejlsberg
5ecd03e8c0
Merge pull request #23660 from Microsoft/fixIndexTypeTargetConstraint
...
Fix constraint of 'keyof T[K]' in target position
2018-04-27 15:52:21 -07:00
Nathan Shively-Sanders
3631af6486
Remove readonly from object rest properties ( #23746 )
...
* Remove readonly from object rest properties
Works the same as removing it from object spread properties
* Fix bug number in test
2018-04-27 14:54:59 -07:00
Wesley Wigham
d5ef1174bd
Copy consistient valueDeclarations on union/intersection symbols ( #23190 )
2018-04-27 13:12:35 -07:00
Anders Hejlsberg
d25a6ec9ad
Remove redundant primitive types from intersections with literal types
2018-04-27 10:40:16 -07:00
Nathan Shively-Sanders
1595f7fe83
Add prettier user test and fix associated crash ( #23715 )
...
* Add prettier and fix crash bug
Name resolution would crash when resolving a type name inside a
typedef's property tag.
* Update tsconfig and thefore prettier baseline
2018-04-26 14:03:18 -07:00
Nathan Shively-Sanders
1541599ea0
Check base type for special property declarations ( #23671 )
...
If the base type has a property by that name, add it to the list
constructor types to make it as authoritative as special assignments
found in the constructor.
2018-04-26 08:14:22 -07:00
Andy
aa102435b3
Fix insertNodeAtClassStart for empty class with comment ( #23342 )
2018-04-26 08:00:38 -07:00
Daniel Rosenwasser
9672116d8c
Merge remote-tracking branch 'origin/master' into importDotMeta
2018-04-25 22:21:56 -07:00
Wesley Wigham
4a6888a850
There exist type parameters with symbols but without TypeParameterDeclaration nodes ( #23690 )
...
* There exist type parameters with symbols but without TypeParameterDeclaration nodes
* Add test
2018-04-25 15:53:06 -07:00
Nathan Shively-Sanders
b2bfccfce4
Prototype-property assignment:fix name resolution crash ( #23680 )
2018-04-25 13:59:40 -07:00
Andy
9b05bd5cd7
Remove unnecessary check for ElementAccessExpression#argumentExpression being defined ( #23685 )
2018-04-25 13:30:34 -07:00
Wesley Wigham
ec05f29632
Make signature help node building cancellable ( #23543 )
...
* Make token building cancellable
* Scope cancellation token, make find all refs and quickinfo cancellable
* Make completion entry details cancellable
* Actually accept public API update
* Add test verifying cancellations within checker for select language service operations
* Document runWithCancellationToken a bit more
* Add post-cancellation verification to test
2018-04-25 11:44:13 -07:00
Anders Hejlsberg
3707f7dfbe
Handle more situations involving combined constraints of intersections
2018-04-25 10:58:08 -07:00
Andy
583bcea603
Always parse an argument for an ElementAccessExpression ( #23683 )
2018-04-25 10:08:35 -07:00
Anders Hejlsberg
d90d6b9277
Remove more intersections with empty value domains from union types
2018-04-24 15:55:15 -07:00
Anders Hejlsberg
ef8d5094b4
Properly check relationships for intersections with union constraints
2018-04-24 14:57:27 -07:00
Sheetal Nandi
13d993b954
Helper for getting string comparer
2018-04-24 11:53:36 -07:00
Alexader
a20e59cae4
Add warn that user can not use --strictPropertyInitialization without --strictNullChecks
2018-04-24 21:48:46 +03:00
Anders Hejlsberg
ad4f83a281
Merge branch 'master' into fixIndexTypeTargetConstraint
...
# Conflicts:
# tests/baselines/reference/keyofAndIndexedAccess.js
# tests/baselines/reference/keyofAndIndexedAccess.symbols
# tests/baselines/reference/keyofAndIndexedAccess.types
# tests/cases/conformance/types/keyof/keyofAndIndexedAccess.ts
2018-04-24 11:08:08 -07:00
Anders Hejlsberg
5d67f8ef68
Merge pull request #23645 from Microsoft/distributeKeyofUnion2
...
Distribute 'keyof' union types (take 2)
2018-04-24 10:09:45 -07:00
Anders Hejlsberg
e71afc32ad
Reinstate type simplification for 'keyof T[K]' as target in relation
2018-04-24 10:02:34 -07:00
Andy
969aa45ea5
Improve error message for unused type ( #23633 )
2018-04-24 08:54:42 -07:00
Anders Hejlsberg
09590bc041
Transform 'keyof (A | B)' to 'keyof A & keyof B'
2018-04-23 20:57:11 -07:00