Commit Graph

21146 Commits

Author SHA1 Message Date
Jack Williams
4acdca5258 Enforce strictNullChecks for RHS of empty destructuring assignment
When strictNullChecks is on, check the RHS of the following
destructuring assignments for possible null or undefined:

const {} = ...
const [] = ...
let {} = ...
let [] = ...
({} = ...)
2018-01-10 01:46:36 +00:00
Andy
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
Andy
9aa99b90c7 Include directories in completions for path mapping (#21103) 2018-01-09 13:15:30 -08:00
Andy
fed34cd616 Fix bug: normalize path after combining (#21100) 2018-01-09 11:54:35 -08:00
Andy
191b9750c3 Clear jsDocCache for reused nodes (#21099) 2018-01-09 11:22:15 -08:00
Andy
82fb294924 For import fix, support path mapping value that begins in "./" or ends in ".ts" (#21035)
* For import fix, support path mapping value that begins in "./" or ends in ".ts"

* Handle repeated "./" in path

* Rename parameters to indicate that they're relative to baseUrl

* Support relative path beginning with `..\`

* Remove unused function
2018-01-09 10:34:35 -08:00
Wesley Wigham
fdd8a52240 Offer per-member diagnostics for incorrectly implemented inherited members (#21036)
* Offer per-member diagnostics for incorrectly implemented inherited members on classes

* Revise error message, make containingChain a thunk

* Fix typo in comment
2018-01-09 10:20:07 -08:00
Andrew Casey
ba979fa537 Delete redundant test (#21085)
The same test already exists for TS.
2018-01-09 10:11:28 -08:00
Andy
5ab5694a5b Don't count self-reference in more cases (skip more nodes when setting lastNonBlockLocation) (#21095) 2018-01-09 09:53:39 -08:00
Wenlu Wang
062f97a6fa allow const enum in type query (#21083) 2018-01-09 09:24:00 -08:00
Andrew Casey
ef5a289966 Merge pull request #21014 from amcasey/GH19115
Handle different default export forms the same way in import code fixes
2018-01-08 19:07:43 -08:00
Andy
89ceb4b9b5 Support completions that require changing from dot to bracket access (#20547)
* Support completions that require changing from dot to bracket access

* Use insertText and replacementSpan

* Rename includeBracketCompletions to includeInsertTextCompletions

* Don't add completions that start with space
2018-01-08 18:57:46 -08:00
Remo H. Jansen
73e3e8d790 Fixes #20026 (#20157)
* Added test case for #20026

* Implemented #20026

* Addresed comments at Microsoft/TypeScript/pull/20157#discussion_r152086287

* Fixed merge issues

* Fixed baseline issue

* Merged upstream
2018-01-08 17:25:56 -08:00
Andy
c4d76292f1 Ensure visitor visits the awaitModifier of a ForOfStatement (#21078) 2018-01-08 17:22:32 -08:00
Wesley Wigham
9efb3ac3a7 Fix this.timeout not actually applying the timeout within it blocks (#21079) 2018-01-08 16:52:58 -08:00
Andy
37d4f6a69d Mark references to dynamically-named properties as used (#21010)
* Mark references to dynamically-named properties as used

* Avoid showing the symbol ID

* Use symbolToString instead of showSymbol
2018-01-08 16:44:58 -08:00
Wesley Wigham
7e6315075d Synthesize namespace records for proper esm interop (#19675)
* Integrate importStar and importDefault helpers

* Accept baselines

* Support dynamic imports, write helpers for umd module (and amd is possible) kinds

* Accept baselines

* Support AMD, use same helper initialization as is normal

* update typechecker to have errors on called imported namespaces and good error recovery with a quickfix

* Overhaul allowSyntheticDefaultExports to be safer

* Put the new behavior behind a flag

* Rename strictESM to ESMInterop

* ESMInterop -> ESModuleInterop, make default for tsc --init

* Rename ESMInterop -> ESModuleInterop in module.ts, add emit test (since fourslash doesnt do that)

* Remove erroneous semicolons from helper

* Reword diagnostic

* Change style

* Edit followup diagnostic

* Add secondary quickfix for call sites, tests forthcoming

* Add synth default to namespace import type, enhance quickfix

* Pair of spare tests for good measure

* Fix typos in diagnostic message

* Improve comment clarity

* Actually accept the updated changes to the esmodule interop description

* ESModule -> esModule

* Use find and not forEach

* Use guard

* Rely on implicit falsiness of Result.False

* These should have been emit flags
2018-01-08 16:36:23 -08:00
Andy
859f0e3070 Add noDoubleSpaceRule to jakefile (#21077) 2018-01-08 15:44:33 -08:00
Andy
39dfeb0176 Add stricter parameter types for Object.values and Object.entries (#20553)
* Add stricter parameter types for Object.values and Object.entries

* Use mapped type and constrain 'T extends object'

* Revert everything but change to parameter types
2018-01-08 15:33:33 -08:00
Mohamed Hegazy
2869657da7 Update failing test 2018-01-08 15:22:14 -08:00
Mohamed Hegazy
30c1419ebc Merge branch 'jwbay-import-quickinfo' 2018-01-08 15:11:21 -08:00
Mohamed Hegazy
9ece1a5dd3 Merge branch 'master' of https://github.com/Microsoft/TypeScript 2018-01-08 15:00:14 -08:00
benbraou
804eb32208 feat(es2018): add definitions for Array.prototype.flatten and Array.prototype.flatMap (#20431)
* bug(esnext): add definitions for flatten and flatMap

Fixes #20410

* bug(esnext) add overloads for flatten
2018-01-08 14:59:37 -08:00
Mohamed Hegazy
00d4acaad2 Port generated lib files (#21076) 2018-01-08 14:57:31 -08:00
Mohamed Hegazy
24114d8c05 Merge branch 'master' of https://github.com/Microsoft/TypeScript 2018-01-08 14:57:26 -08:00
Andy
a23bbe65e6 Use substring instead of substr (#20578)
* Use substring instead of substr

* Remove unused scanning of SyntaxKind.DotDotDotToken in jsdoc

* Remove other unnecessary jsdoc syntax kinds

* Move all pos++ together
2018-01-08 14:54:18 -08:00
Mohamed Hegazy
45a10c8401 Merge branch 'import-quickinfo' of https://github.com/jwbay/TypeScript into jwbay-import-quickinfo 2018-01-08 14:43:56 -08:00
Mohamed Hegazy
bd6249542f Merge branch 'benbraou-issue20410' 2018-01-08 14:42:57 -08:00
Mohamed Hegazy
1235f78232 Merge branch 'issue20410' of https://github.com/benbraou/TypeScript into benbraou-issue20410 2018-01-08 14:42:51 -08:00
Andy
464df8f699 Fix build failure with newest @types/mocha (#21075) 2018-01-08 14:34:09 -08:00
Wesley Wigham
b1a0261575 If declaration emit input is a module, output should be a module (#20626) 2018-01-08 13:58:34 -08:00
Wesley Wigham
b2f2610b85 Use getInternalName not getLocalName (#20168) 2018-01-08 13:55:50 -08:00
Jing Ma
16a882eb8b Optimized annotation according to Spec (#19906) 2018-01-08 13:44:49 -08:00
falsandtru
b18ee65418 Add Related section (#20151) 2018-01-08 13:35:28 -08:00
Mohamed Hegazy
c632e44350 Merge branch 'master' into issue20410 2018-01-08 13:28:59 -08:00
Wenlu Wang
7154df10df add support for insertSpaceBeforeTypeAnnotation (#20466) 2018-01-08 13:25:02 -08:00
Daniel Rosenwasser
6d596c058e Merge pull request #20726 from kujon/indexable_types
Improved error messaging for index signature parameters
2018-01-08 13:23:39 -08:00
Wenlu Wang
0ecdc876f3 imporve conditional operator if missing colon token (#20498)
f2
2018-01-08 13:16:17 -08:00
Wenlu Wang
a82d1f8580 ignore Initial check if left of DestructuringAsignment (#20906) 2018-01-08 13:13:23 -08:00
Wenlu Wang
06c9a28b36 fix narrowType check with template literals (#21024) 2018-01-08 13:06:58 -08:00
Andy
86eab34758 type-operator-spacing: Just check for presence of space, not double-space (#20817) 2018-01-08 12:29:43 -08:00
Andy
6d361f89e3 Move isObjectLiteralElement to public utilities (#20605) 2018-01-08 12:29:21 -08:00
Andy
97c3e9c3ef Support all path mappings that end in "*" in completions (#21072)
* Support all path mappings that end in "*" in completions

* Check for uppercase TsConfig.JSON
2018-01-08 12:28:50 -08:00
Wesley Wigham
84e3681b79 Support timeouts in the parallel runner (#20631)
* Support timeouts in the parallel runner

* Apply PR feedback: unify code paths, use string as sentinel
2018-01-08 12:28:04 -08:00
Wesley Wigham
b5fda4970d Use emptyObjectType for omitted members instead of unknownType (#20940)
* Use emptyObjectType for omitted members instead of unknownType

* Use similar logic as is used for empty arrays for missing elements
2018-01-08 12:27:11 -08:00
Andy
20c846d671 Add helper functions to simplify getCompletionEntryDisplayNameForSymbol (#20552) 2018-01-08 11:48:25 -08:00
Andy
fd5ed5ac79 Have Set and Map constructors take ReadonlyArrays (#20606) 2018-01-08 11:39:52 -08:00
Andy
50fa0f61f5 Fix bug: Resolve module symbol before checking whether module export is a re-export (#20989)
* Fix bug: Resolve module symbol before checking whether module export is a re-export

* Remove unnecessary @nolib
2018-01-08 11:33:57 -08:00
Andy
f34de1a1ca Support find-all-references starting from a reference path or reference types comment (#21007) 2018-01-08 11:33:14 -08:00
Andy
fef7ad4986 Remove unncessary existence check (#21029) 2018-01-08 11:30:36 -08:00