Commit graph

145 commits

Author SHA1 Message Date
Ryan Cavanaugh 54070786e4 Report external files in initial case 2017-09-20 10:52:56 -07:00
Ryan Cavanaugh 3bd4c4f847 Properly report external filenames 2017-09-13 15:19:07 -07:00
Ryan Cavanaugh 67f2716156 Detect bad plugins and work around them 2017-08-28 13:32:20 -07:00
Ryan Cavanaugh 43b8ce664c Merge 2017-08-22 14:31:49 -07:00
Ron Buckton 360dc914c3 Merge pull request #17602 from Microsoft/multiInferredProjects
Adds support for inferred project isolation by projectRootPath
2017-08-11 16:06:49 -07:00
Andy f124e19971 Session: don't return undefined if a response is required (#17165)
* Session: don't return undefined if a response is required

* Use ReadonlyArray and emptyArray

* Remove inferred return type
2017-08-09 13:46:47 -07:00
Andy 5141ce751d Deduplicate unresolvedImports (#17248)
* Deduplicate unresolvedImports

* Add `isNonDuplicateInSortedArray` helper
2017-08-08 11:02:10 -07:00
Andy ceae613e4c Add lint rule to check that Debug.assert calls do not eagerly interpolate strings (#17125)
* And lint rule to check that `Debug.assert` calls do not eagerly interpolate strings

* Use more specific 'assert' functions to avoid callbacks

* Respond to PR feedback
2017-08-08 07:56:14 -07:00
Andy 382785a528 Fix logging of module resolution errors (#17144) 2017-08-08 07:54:08 -07:00
Ron Buckton fa7f3e85fe Adds support for inferred project isolation by projectRootPath 2017-08-03 16:03:59 -07:00
Sheetal Nandi 711e890e59 Added | undefined to properties for watching that can be undefined 2017-07-28 14:56:43 -07:00
Sheetal Nandi c2d0d533c4 dispose the watched wild card directories only if present 2017-07-28 14:56:33 -07:00
Ryan Cavanaugh 5272ec6309 Types Map WIP 2017-07-27 16:07:50 -07:00
Andy c60774b4c6 Make many 'static' variables readonly (#17306) 2017-07-20 08:54:47 -07:00
Andy 555776eb3c Minor cleanups in builder (#17208)
* Minor cleanups in builder

* Use enumerateInsertsAndDeletes
2017-07-17 12:24:56 -07:00
Andy d2ec45f354 Remove unnecessary 'ts.' qualifications (#17163) 2017-07-13 13:08:59 -07:00
Andy 2368847f6b Indent filesToString (#17130) 2017-07-12 10:42:05 -07:00
Andy 17578e8a5d Use Map<true> for sets (#16972) 2017-07-07 10:34:36 -07:00
Andrew Casey 569ecabb0a Address PR feedback
Make Program.getMissingFilePaths required

Assume getMissingFilePaths always returns a defined value

Make getMissingFilePaths internal

Replace nullable-bool with enum

Update type to reflect possibility of undefined

Use deepEqual to simplify tests

Make condition const

Don't bother cleaning up map before freeing it

Switch from foreach to for-of to simplify debugging

Use a Map, rather than a FileMap, to track open FileWatchers

Fix compilation errors

Introduce and consume arrayToSet

Fix lint warnings about misplaced braces

Delete incorrect comment

Delete from map during iteration

Eliminate unnecessary type annotations
2017-06-29 11:29:19 -07:00
Andrew Casey 6d200bffbd Watch files through the host
Call `this.projectService.host.watchFile`, rather than
`ts.sys.watchFile` so that it gets mocked correctly in the unit tests.
Repair two failing tests.
2017-06-29 10:39:32 -07:00
Andrew Casey a39e969338 Clean up file watchers on project close 2017-06-29 10:39:31 -07:00
Andrew Casey 4863ada22c Track missing files
1. Expose missing files from the `Program`.
2. In `tsc --watch` and `tsserver`, add file watchers to missing files.
3. When missing files are created, schedule compilation (tsc) or refresh
the containing projects (tsserver).
2017-06-29 10:39:31 -07:00
Andy 9013665e22 Replace FileMap with Map where there is no keyMapper (#16724)
* Replace FileMap with Map where there is no keyMapper

* Remove `toKey` and use `keyMapper` directly
2017-06-28 13:15:34 -07:00
Sheetal Nandi 09f0b3471a Merge branch 'master' into ownJsonParsing 2017-06-15 09:59:37 -07:00
Sheetal Nandi 187febd10f Merge pull request #16494 from Microsoft/dontCreateScriptInfosWithFileExistsAndReadFile
Fixes the memory leak because of project and its corresponding script info even after project is removed
2017-06-14 15:17:25 -07:00
Sheetal Nandi 1bf1209f7e Cleanup script infos that are not part of any project when the project is closed or inferred projects are refreshed
Also dispose some pointers so that the closures get disposed with project and script infos
2017-06-12 16:52:36 -07:00
Andy 09321b3834 Convert Extension to a string enum (#16425) 2017-06-09 19:32:44 -07:00
Sheetal Nandi c4ad151a46 Merge branch 'master' into ownJsonParsing 2017-06-05 17:01:09 -07:00
Andy 70564110c0 Make use of array helper functions (#16226)
* Make use of array helper functions

* Remove unnecessary 'ts.'
2017-06-05 14:11:43 -07:00
Ryan Cavanaugh 6f42f9ae3f Merge pull request #15308 from chuckjaz/external-files
Allow plugins to provide a list of external files.
2017-06-05 13:14:25 -07:00
Sheetal Nandi d680720f6d Merge branch 'master' into ownJsonParsing 2017-06-05 10:28:23 -07:00
Andrew Casey 95b5a691d4 Guess 1: null check is missing; Guess 2: ternary does the appropriate check 2017-05-31 16:30:27 -07:00
Sheetal Nandi 8d771ca044 Merge branch 'master' into ownJsonParsing 2017-05-30 13:03:23 -07:00
Sheetal Nandi 7bd9e092ac Make configFile on compiler options as non enumerable 2017-05-26 17:15:57 -07:00
Andy d052bb83ca Add project telemetry (#16050)
* Add project telemetry

* Respond to some PR comments

* Wrap event in a TelemetryEvent payload

* Replace paths with empty string instead of removing them entirely

* Add "version" property to payload

* Add telemetry for typeAcquisition settings

* Add "files", "include", "exclude", and "compileOnSave"

* Convert typingsOptions include and exclude to booleanss

* Add "extends", "configFileName", and "projectType"

* configFileName: Use "other" instead of undefined

* Add "languageServiceEnabled" telemetry
2017-05-25 13:30:27 -07:00
Sheetal Nandi f1ea38d127 Merge branch 'master' into ownJsonParsing 2017-05-24 12:46:29 -07:00
Andy Hanson 34bb955655 Use orderedRemoveItem instead of remove helper 2017-05-24 08:42:02 -07:00
Sheetal Nandi 7cf93f94d4 Report config file errors as part of syntactic diagnostic on the file 2017-05-23 15:56:20 -07:00
Ryan Cavanaugh ab3ffa22da Add flag to allow local plugin loading 2017-05-17 19:52:57 -07:00
Sheetal Nandi ea60e9966d Get configFiles as part of file names 2017-05-15 16:07:08 -07:00
Chuck Jazdzewski 785c281fd6 Allow plugins to provide a list of external files.
The list of the plugin's external files and request made to
a file in the list will be routed to an instance of the plugin.
2017-04-25 10:11:05 -07:00
Arthur Ozga 0ea1b82a85 test module reuse 2017-04-20 18:55:15 -07:00
Arthur Ozga cbbf6f8847 Merge branch 'master' into tripleEquals 2017-04-17 15:57:51 -07:00
Ryan Cavanaugh d31364c09c Load global plugins even if no local ones exist 2017-04-13 16:17:35 -07:00
Ryan Cavanaugh 19ddc1e94a Avoid loading duplicate local+global plugins 2017-04-13 16:17:34 -07:00
Ryan Cavanaugh 3cc379c3c0 Fix merge 2017-04-13 16:16:57 -07:00
Arthur Ozga 7e03429a8e enforce triple-equals 2017-04-04 15:51:13 -07:00
Ryan Cavanaugh 71e296042a Apply the 20 MB non-TS source limit across all projects
(cherry picked from commit cc8ce5975c)
(cherry picked from commit de8fb9e833)
2017-03-24 11:58:20 -07:00
Andy Hanson d58cfa238b Merge branch 'master' into lint_better 2017-03-06 06:20:48 -08:00
Andy Hanson 8371eb6401 Update tslint to latest (next is still on 4.3) and lint for BOM 2017-03-01 10:37:13 -08:00