Commit Graph
1599 Commits
Author SHA1 Message Date
Ron Buckton 5198bf3c67 Add perf optimizations for path comparisons 2018-11-21 21:51:42 -08:00
Sheetal Nandi 2128cc49a0 Dont explicitly get declaration diagnostics 2018-11-21 11:43:36 -08:00
Sheetal Nandi d7e08669f5 Merge pull request #28588 from dsherret/removeNonInternalStuffJsDocComment
Remove jsdoc comment on ts namespace
2018-11-19 08:44:29 -08:00
David Sherret 1acfce680e Remove jsdoc on ts namespace. 2018-11-17 11:50:06 -05:00
Klaus Meinhardt 1ad7b0fe69 forEachToken: correctly handle JSDocTag (#28369)
* forEachChild: handle JSDocTags and all their children

* fix codefix for unused identifier

* fix lint

* fix build

* Fix test failures
2018-11-15 13:22:25 -08:00
Nathan Shively-Sanders 6cee7c3080 Better nameless parameter implicit any error (#28554)
* Initial version, doesn't work for primitives yet.

Need to find out why.

* Primitives now work, plus improve error message

null and void don't even parse without parameter names so they are not
tested.

* Codefix: Add names to nameless parameters

* Improve error wording

* Add detail to error message
2018-11-15 12:45:39 -08:00
Andy da37457c72 When renaming an imported symbol, rename only in current file (#28406)
* When renaming an imported symbol, rename only in current file

* Improve re-export references

* Remember to use 'range' in for loop

* Uncomment tests
2018-11-14 09:09:00 -08:00
Andy 995f746c92 Add implicit-any error on JSDocFunctionType with no return type (#28487) 2018-11-12 14:39:02 -08:00
Wesley Wigham 11eee2b6ee Slightly improve missing property errors (#28298)
* Slightly improve missing property errors

* Add missing quote

* Fix jsx case

* Add related span

* Fix crash (why can declarations be undefined)

* Only skip top elaboration when no variant message is provided
2018-11-12 14:31:15 -08:00
Ron Buckton 151dc074a8 Merge branch 'master' into sourceMapGenerator 2018-11-09 11:50:51 -08:00
Caleb Sander 28e9ec497c Address review comments 2018-11-05 11:36:32 -08:00
Caleb Sander ac2a118f07 Add bigint type 2018-11-05 11:36:31 -08:00
Caleb Sander ece27eb177 Utilities for PseudoBigInt 2018-11-05 11:36:30 -08:00
Andy 4e59096ea5 Exclude keywords from import completions (#28114)
* Exclude keywords from import completions

* Still allow contextual keywords

* Add excludes tests
2018-11-02 14:33:02 -07:00
Nathan Shively-Sanders a682a525b8 module.exports aliases have correct flags (#28303)
* module.exports aliases have correct flags

They are marked both as (1) alias and (2) assignment declaration. This
fixes alias resolution in cases where multiple module.exports
assignments exist, but differ in whether they are aliases or not:

```js
function f() { }
module.exports = f
module.exports = 23
```

Previously, this construct would fail to resolve the alias `f` because
the `export=` symbol would be marked as Alias | Value but not
Assignment. This change just adds Assignment so that the assignment
declaration alias-following rules apply: you should always follow the
alias, regardless of other flags.

Also, isAliasSymbolDeclaration needed to be tightened up. Previously, I
missed the condition that `module.exports =` aliases required an
EntityNameDeclaration on right-hand-side, just like `export default` and
`export =` aliases.

* Address PR comments

1. Rename test to be more accurate.
2. Always mark module.exports assignments with SymbolFlags.Assignment.
2018-11-02 09:08:04 -07:00
Klaus Meinhardt a0767437f6 remove some useless internal comments 2018-11-01 17:48:52 +01:00
Andy 7c515bf6e8 Remove toSortedArray and toDeduplicatedSortedArray, use sort and sortAndDeduplicate (#28214) 2018-10-30 08:41:31 -07:00
Andy 672b0e3e16 Have flatMap return a ReadonlyArray by default (#28205) 2018-10-29 11:12:51 -07:00
Wesley Wigham 0a7c92864d Fix Object.defineProperty declaration expando-ness and renames (#28061)
* Allow object.defineProperty calls to be expando properties

* Fix rename locations for object.defineProperty assignments
2018-10-23 09:33:53 -07:00
Andy 5becc3b170 Rename of non-intrinsic JSX element should rename the declaration (#28066) 2018-10-22 18:17:32 -07:00
Andy 82773b8550 Fix bug: only getCompletionEntriesFromTypings if completions are for top-level directory (#27226)
* Fix bug: only getCompletionEntriesFromTypings if completions are for top-level directory

* Support subdirectories of a nonrelative import
2018-10-22 18:17:09 -07:00
Klaus Meinhardt 3b058a4de4 fix compile errors, accept baselines 2018-10-22 21:12:12 +02:00
Wesley Wigham 69b1cb5bac Add new special assignment kinds for recognizing Object.defineProperty calls (#27208)
* Add new special assignment kinds for recognizing Object.defineProperty calls

* Add support for prototype assignments, fix nits

* Fix code review comments

* Add test documenting behavior in a few more odd scenarios
2018-10-19 14:31:55 -07:00
Sheetal Nandi 92f3f1cde0 Allow files to be included by *.json pattern in include of tsconfig
Fixes #25636
2018-10-11 14:45:27 -07:00
Sheetal Nandi 0d91838593 Do not generate jsFile path if its emitOnlyDeclarations is set
Fixes #27009
2018-10-11 10:14:59 -07:00
Ron Buckton 4982803a38 Merge branch 'master' into sourceMapGenerator 2018-10-08 18:01:37 -07:00
Prateek Nayak 0d19023dc1 Added ObjectKeyword check to isPartOfTypeNode
The check for ObjectKeyword which seemed to be missing while checking for type of node was added to isPartOfTypeNode
2018-10-08 19:10:12 +05:30
Ryan Cavanaugh 70e26fc701 Merge pull request #27447 from mattmccutchen/issue-27117
Don't complain about `modules` and `outFile` options when `emitDeclarationOnly` is set.
2018-10-01 15:50:08 -07:00
Andy 8feddcd16d Clean up amalgamatedDuplicates (#27285)
* Clean up amalgamatedDuplicates

* Code review
2018-10-01 12:16:49 -07:00
Matt McCutchen 32e75e7ae7 Don't complain about modules and outFile options when
`emitDeclarationOnly` is set.

Fixes #27117.
2018-09-28 21:07:48 -04:00
Andy 19af881f94 ExpressionWithTypeArguments parent may be a JSDocAugmentsTag (#27229) 2018-09-27 18:26:57 -07:00
Anders Hejlsberg 5510e0755e Merge branch 'master' into typedBindCallApply
# Conflicts:
#	tests/baselines/reference/tsxTypeArgumentPartialDefinitionStillErrors.errors.txt
#	tests/baselines/reference/wrappedAndRecursiveConstraints4.errors.txt
2018-09-24 16:38:39 -07:00
Ryan Cavanaugh a5326e68d0 Merge pull request #26866 from NMinhNguyen/allowSyntheticDefaultImports-if-esModuleInterop
Enable allowSyntheticDefaultImports if esModuleInterop is enabled
2018-09-17 15:03:28 -07:00
Andy e710645bf9 Never escape string literals from textChanges (#26971)
* Never escape string literals from textChanges

* Use `boolean | undefined`
2018-09-17 11:06:39 -07:00
Andy a57467a317 Fix bugs: Replace SourceFile if '--noUnusedLabels' changed (#27060)
* Fix bugs: Replace SourceFile if '--noUnusedLabels' changed

* Use properties on CommandLineOptionBase

* Handle "alwaysStrict" and better categorize options

* Properly handle "strict"

* Code review

* fix test
2018-09-17 10:53:48 -07:00
Sheetal Nandi 20f671ede2 PR feedback 2018-09-14 11:07:22 -07:00
Sheetal Nandi 40d33c809a Merge branch 'master' into watchAPIAndProjectReferences 2018-09-14 10:54:07 -07:00
Sheetal Nandi 47f311ac03 Merge pull request #27062 from Microsoft/tsbuildWatchImprovements
Multiple improvements to watching with --build option
2018-09-14 09:54:17 -07:00
Sheetal Nandi ea67e3ac56 Fix watch of project with project references 2018-09-13 15:41:07 -07:00
Nathan Shively-Sanders 64d0e0d448 Shorten more internal names to JS or TS (#27080) 2018-09-13 15:05:57 -07:00
Anders Hejlsberg 9414fbe30b Merge branch 'master' into typedBindCallApply
# Conflicts:
#	src/compiler/diagnosticMessages.json
2018-09-12 13:31:59 -07:00
Nathan Shively-Sanders 6bd1da20c9 Rename JS-specific concepts (#26795)
* Rename JS concepts

1. Assignment declaration -- an assignment that is treated like a
declaration. Previously called [JS] special (assignment|declaration),
among other things.
2. Expando -- a value that can be used as a target in assignment
declarations. Currently, a class, function or empty object literal.
Functions are allowed in Typescript, too. Previously called a JS
container, JS initializer or expando object.
3. JavaScript -> Javascript. This is annoying to type, and looks like
'Java Script' in a camelCase world.

Everything is a pure rename as far as I know. The only test change is
the API baselines, which reflect the rename from SymbolFlags.JSContainer
to SymbolFlags.Assignment.

* Remove TODO

* Rename Javascript->JS

Note that this introduces a variable name collision in a couple of
places, which I resolved like this:

```ts
const isInJavascript = isInJSFile(node);
```
2018-09-12 10:44:46 -07:00
Ron Buckton 5d79704931 Sanitize module resolution logs for typesVersions entries 2018-09-11 14:19:28 -07:00
Anders Hejlsberg b67a261eba Merge branch 'master' into typedBindCallApply
# Conflicts:
#	src/compiler/diagnosticMessages.json
2018-09-11 10:48:18 -07:00
Sheetal Nandi 6c57ebd00b Update watches to wild card directories, input files, config files when project invalidates 2018-09-10 16:55:09 -07:00
Anders Hejlsberg 22a384d786 New --strictBindCallApply flag in compiler 2018-09-10 15:12:16 -07:00
Ron Buckton a255d9a163 Merge branch 'master' into typesVersions 2018-09-07 13:52:12 -07:00
Andy 8c22770ea8 Improve 'isWriteAccess' for findAllReferences (#26889) 2018-09-06 10:44:32 -07:00
Sheetal Nandi ddba6d8a70 Merge pull request #26825 from Microsoft/resolveJsonModuleEmit
Support json module emit when module emit is commonjs, amd, es2015 or esnext
2018-09-06 09:57:47 -07:00
Wesley Wigham 62d8b85f1d Allow literal initializers of readonly properties in declaration files (#26313)
* Allow literal initializers of readonly properties in declaration files

* Move some conditions a bit
2018-09-05 11:30:05 -07:00