2142 Commits

Author SHA1 Message Date
Ron Buckton
09487b8a1d Added tests, pr feedback 2017-08-11 15:31:09 -07:00
Ron Buckton
e3b6df64b3 Add support to infer the quote style for import quick fixes 2017-08-11 14:26:25 -07:00
Yui
d352e3b03f [Master] fix 16407 - LS in binding element of object binding pattern (#16534)
* wip-try get symbol of bindingelement in objectBindingPattern first

* Add fourslash tests

* Update .types baselines

* Update .symbols baselines

* Revert checker changes

* Actually lookup type for binding property name definition

* More succinct check, clarify yui's comment
2017-08-11 11:14:59 -07:00
Ryan Cavanaugh
c27ee81341 Merge branch 'master' into extract-method-2 2017-08-10 17:02:14 -07:00
Ryan Cavanaugh
12403d9f70 Various fixes 2017-08-10 13:07:42 -07:00
Andy
37b20ee670 For duplicate source files of the same package, make one redirect to the other (#16274)
* For duplicate source files of the same package, make one redirect to the other

* Add reuseProgramStructure tests

* Copy `sourceFileToPackageId` and `isSourceFileTargetOfRedirect` only if we completely reuse old structure

* Use fallthrough instead of early exit from loop

* Use a set to efficiently detect duplicate package names

* Move map setting outside of createRedirectSourceFile

* Correctly handle seenPackageNames set

* sourceFileToPackageId -> sourceFileToPackageName

* Renames

* Respond to PR comments

* Fix bug where `oldSourceFile !== newSourceFile` because oldSourceFile was a redirect

* Clean up redirectInfo

* Respond to PR comments
2017-08-09 14:39:06 -07:00
Wesley Wigham
6221d7089e Fix import addition location (#17327)
* Add test with bug

* Fix for import placement

* Consolidate comment recognition functions into utilities

* Add another test with all 3 kinds

* Recognize path directives as part of triple slash directives

* Also handle no-default-lib triple-slash comments

* Test for all the triple-slash kinds

* Keep import-placement logic in the quickfix, since its not really a node start; accept new baselines

* Work in not-ES6, use a real no-lib comment

* Remove no default lib triple slash comment, it disables checking and thereby quick fixes

* Copy regex rather than have a regex copy
2017-08-09 14:03:37 -07:00
Andy
e73d58e21c findAllReferences: Type parameter is not globally visible (#16419)
* findAllReferences: Type parameter is not globally visible

* Add test for merged interface

* Clean up comment
2017-08-09 13:53:54 -07:00
Ron Buckton
83ae8afef8 Merge pull request #17394 from vvakame/openParentFormatting
Add SpaceBetweenOpenParens formatting rule
2017-08-08 13:04:13 -07:00
Ron Buckton
31230b9176 Merge pull request #16953 from charlespierce/destructure_completion_nonpublic
Remove nonpublic members from destructuring completion lists
2017-08-07 14:24:47 -07:00
Ryan Cavanaugh
c7f665faa1 Extract Method (squash) 2017-08-04 16:10:33 -07:00
Andy
4f13bcfac1 Fix find-all-references for destructured getter (#17483)
* Fix find-all-references for destructured getter

* Handle setter too

* Use SymbolFlags.Accessor
2017-08-02 06:51:26 -07:00
Mine Starks
84c579586c Merge pull request #17536 from minestarks/fix15223
Missing import codefix: Take scoped packages (@foo/bar) into consideration
2017-07-31 14:09:37 -07:00
Mine Starks
16112c358d Missing import codefix: Take scoped packages (@foo/bar) into consideration 2017-07-31 13:28:55 -07:00
Daniel Rosenwasser
4315c2a25f Added failing test case. 2017-07-27 18:11:34 -07:00
Daniel Rosenwasser
935b895ac1 Added/augmented tests. 2017-07-27 14:55:29 -07:00
Daniel Rosenwasser
e9330d4994 Add test case for code fixes on qualified names used instead of indexed access types. 2017-07-27 12:40:57 -07:00
Mine Starks
89994111bd Missing import code fix - include export assignment properties when looking for module exports (#17376)
* Include export assignment properties when looking for module exports

* Create new API function for tryGetMemberInModuleExportsAndProperties

* Cleanup based on review feedback
2017-07-26 16:17:01 -07:00
Nathan Shively-Sanders
c55a043767 Address PR comments from Andy
I'll take a look at Wesley's next and see if those require any changes.
2017-07-25 14:14:12 -07:00
vvakame
d1459f7e9c Add SpaceBetweenOpenParens rule 2017-07-25 18:24:04 +09:00
Mine Starks
441daa4e19 Merge pull request #17302 from minestarks/removeimportfix
Bugs in missing import codefix
2017-07-21 10:22:24 -07:00
Mine Starks
9f6ec635a4 Cleaner path splitting, refine file extension and case sensitivity handling 2017-07-20 16:12:07 -07:00
Armando Aguirre
fe86d2fc06 Merge pull request #17257 from armanio123/FixNodeModulesTodos
Added node_modules path check on getTodoComments method.
2017-07-20 14:58:36 -07:00
Armando Aguirre
9bdd17e842 Added explanation comment for excluding files. 2017-07-19 15:42:01 -07:00
Mine Starks
15d294d350 Bugs in missing import codefix
- We didn't locate the package.json correctly in cases where the module to be imported is in a subdirectory of the package
- We didn't look at the types element in package.json (just typings)
- We didn't remove /index.js from the path if the main module was in a subdirectory

Fixes #16963
2017-07-19 11:02:49 -07:00
Andy
cfa94c2d34 Binder: handle JS property assignment that comes after a method declaration with the same name (#16830) 2017-07-19 09:11:50 -07:00
Wesley Wigham
8075353356 Appropriately parenthesize keyof and typeof queries in array types (#17272)
* Appropriately parenthesize keyof and typeof queries when they are array types

* Fix test and then the same bug in the symbol writer
2017-07-18 15:08:53 -07:00
Nathan Shively-Sanders
7d7a06dbc2 Merge pull request #17250 from Microsoft/quickfix-jsdoc-in-ts
Quickfix jsdoc in Typescript files
2017-07-18 08:59:19 -07:00
Armando Aguirre
6f28f83f18 Added node_modules path check on getTodoComments method. 2017-07-17 17:35:46 -07:00
Nathan Shively-Sanders
cbe7b4dba3 Update jsdoc codefix tests; test function(...) syntax 2017-07-17 14:11:06 -07:00
Andy
6cf30fbccf Fix bug in importTracker: getExportNode must verify that we are on the LHS of a VariableDeclaration (#17205) 2017-07-17 12:29:29 -07:00
Nathan Shively-Sanders
f9e5576d58 Codefix for ?! pre/postfix JSDoc types
For ?, provide two code fixes, one for jsdoc/closure semantics
(`?t -> t | null)` and one for flow semantics
(`?t -> t | null | undefined`).

The current way of doing this is the hackiest thing you can imagine, but
it was easier than lifting everything into the list monad for a code fix
that I might not actually keep.
2017-07-17 11:06:20 -07:00
Nathan Shively-Sanders
3776b0b58b Codefix for Array.<number> -> Array<number> 2017-07-17 10:33:04 -07:00
Nathan Shively-Sanders
a3a6862d43 Add simple jsdoc code fix changes 2017-07-14 16:27:09 -07:00
Nathan Shively-Sanders
f1145c35ca Improve JSDoc function checking
1. Remove checkJSDocFunctionType in favour of checkSignature.
2. Check that 'new', in addition to 'this', must be the first parameter.
3. Remove prematurely added JSDoc-quickfix test.
2017-07-14 10:15:30 -07:00
Nathan Shively-Sanders
da5285e979 Update baselines 2017-07-14 09:34:35 -07:00
Nathan Shively-Sanders
d24b3a3cba Add fourslash tests for function(new/this:T) syntax 2017-07-13 14:49:50 -07:00
Nathan Shively-Sanders
91633cde5f Test JSDoc parsing using TS parser 2017-07-13 11:33:12 -07:00
Mine Starks
fd2dd2edc0 Merge pull request #17078 from minestarks/removeimportfix
Code fix to remove unused named import should preserve default import
2017-07-13 10:53:35 -07:00
Andy
69d3ca774a When adding completions for a module, don't get the type of the module if not necessary. (#16768)
* When adding completions for a module, don't get the type of the module if not necessary.

* Use SymbolFlags.Module alias
2017-07-13 09:20:40 -07:00
Mine Starks
abb229e91b Add a bit more validation around comments 2017-07-12 11:14:48 -07:00
Mine Starks
80b64de1e4 Fix comment behavior in remove unused named bindings 2017-07-11 14:53:08 -07:00
Mine Starks
003c28f1ef Fix caret update logic in fourslash tests 2017-07-11 14:52:41 -07:00
Andy
af147d15d6 Fix typo (#17064) 2017-07-11 07:24:40 -07:00
Andy
aa2d1008bf Completion for default export should be '.default' (#16742)
* Completion for default export should be '.default'

* Don't include empty string in name table

* getSymbolsInScope() should return local symbols, not exported symbols

* Fix bug: getSymbolAtLocation should work for local symbol too
2017-07-11 07:23:32 -07:00
Mine Starks
39e4b1f9e3 Code fix to remove unused import should preserve default import 2017-07-10 14:23:18 -07:00
Andy
ba8e5a7e24 Never return undefined from getExportsOfModule (#17013) 2017-07-07 10:06:12 -07:00
Wesley Wigham
4e6b2f3c93 Created a branded type for identifier-escaped strings (#16915)
* Created a branded type for escaped strings

Then flowed it throughout the compiler, finding and fixing a handful of
bugs relating to underscore-prefixed identifiers in the process.
Includes a test for two cases noticed - diagnostics from conflicting
symbols from export *'s, and enum with underscore prefixed member emit.

* Correctly double underscores WRT mapped types

* Add fourslash tests for other fixed issues

* use function call over cast

* Update forEachEntry type accuracy

* Just use escaped names for ActiveLabel

* Remove casts from getPropertyNameForPropertyNameNode

* This pattern has occurred a few times, could use a helper function.

* Remove duplicated helper

* Remove unneeded check, use helper

* Identifiers list is no longer escaped strings

* Extract repeated string-getting code into helper

* Rename type and associated functions

* Make getName() return UnderscoreEscapedString, add getUnescapedName()

* Add list of internal symbol names to escaped string type to cut back on casting

* Remove outdated comments

* Reassign interned values to nodes, just in case

* Swap to string enum

* Add deprecated aliases to escapeIdentifier and unescapeIdentifier

* Add temp var

* Remove unsafe casts

* Rename escaped string type as per @sandersn's suggestion, fix string enum usages

* Reorganize double underscore tests

* Remove jfreeman from TODO

* Remove unneeded parenthesis
2017-07-06 14:45:50 -07:00
Arthur Ozga
ad291d924d Merge pull request #16748 from aozgaa/implementOptionCrash
visit question token
2017-07-06 13:51:15 -07:00
Arthur Ozga
dc08c5f241 Merge branch 'master' into caretPositionInFourslash 2017-07-06 10:44:59 -07:00