Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Watch improvements in tsserver #17269

Merged
merged 128 commits into from
Oct 3, 2017
Merged

Watch improvements in tsserver #17269

merged 128 commits into from
Oct 3, 2017

Commits on Jul 10, 2017

  1. When opening a file, if it is using existing project, there is no nee…

    …d to update the project by re-reading the config file
    
    This will improve the opening file perf for file opens from same config project
    sheetalkamat committed Jul 10, 2017
    Configuration menu
    Copy the full SHA
    21ad26b View commit details
    Browse the repository at this point in the history
  2. Restructure updating the configured project from disk and actual proj…

    …ect update
    
    Also reload the projects when extra extension in the host change
    sheetalkamat committed Jul 10, 2017
    Configuration menu
    Copy the full SHA
    ae33ae8 View commit details
    Browse the repository at this point in the history
  3. Add project roots in the list of root files even if they arent presen…

    …t on the disk
    
    This helps in reporting errors as well as syncing of the configured/external project when the files are created
    sheetalkamat committed Jul 10, 2017
    Configuration menu
    Copy the full SHA
    75698a8 View commit details
    Browse the repository at this point in the history
  4. Move the server file system to handle watches on file/folder create, …

    …update and delete
    
    This will ensure that the calling of watches doesnt rely on writing test correctly
    sheetalkamat committed Jul 10, 2017
    Configuration menu
    Copy the full SHA
    f154910 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    0e44367 View commit details
    Browse the repository at this point in the history
  6. Update the todo list

    sheetalkamat committed Jul 10, 2017
    Configuration menu
    Copy the full SHA
    2a63827 View commit details
    Browse the repository at this point in the history
  7. Reload the configured project only once even though there are multipl…

    …e files open from that project
    sheetalkamat committed Jul 10, 2017
    Configuration menu
    Copy the full SHA
    96ffd53 View commit details
    Browse the repository at this point in the history
  8. When config file is deleted, apart from removing the projecty, reload…

    … the configured projects for open files from that project to ensure to pick them by another config file that can be present in parent directory
    sheetalkamat committed Jul 10, 2017
    Configuration menu
    Copy the full SHA
    6bd42b8 View commit details
    Browse the repository at this point in the history
  9. Optimize wildcard watchers and config directory watching as now we ha…

    …ve missing file watching as well
    
    We dont need to explicitly watch config file directory as it will be watched:
    - if there was no files specified, in wild card directories
    - if there were files specified as missing file (if the file wasnt present)
    sheetalkamat committed Jul 10, 2017
    Configuration menu
    Copy the full SHA
    df6f75b View commit details
    Browse the repository at this point in the history
  10. Handle the deleted file in update graph better, so that in next updat…

    …e it is possible to schedule the update graph of project
    sheetalkamat committed Jul 10, 2017
    Configuration menu
    Copy the full SHA
    9ff9476 View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2017

  1. Configuration menu
    Copy the full SHA
    62871cc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    48c6513 View commit details
    Browse the repository at this point in the history

Commits on Jul 12, 2017

  1. Configuration menu
    Copy the full SHA
    19a6a00 View commit details
    Browse the repository at this point in the history
  2. Use the cached file exists/directory exists for configured project si…

    …nce we watch the needed files
    sheetalkamat committed Jul 12, 2017
    Configuration menu
    Copy the full SHA
    68def1b View commit details
    Browse the repository at this point in the history
  3. Fixes the fourslash runner tests by handling hosts that cannot suppor…

    …t read directory or getDirectories
    sheetalkamat committed Jul 12, 2017
    Configuration menu
    Copy the full SHA
    029b1f2 View commit details
    Browse the repository at this point in the history
  4. Remove the done TODO

    sheetalkamat committed Jul 12, 2017
    Configuration menu
    Copy the full SHA
    f338a70 View commit details
    Browse the repository at this point in the history

Commits on Jul 13, 2017

  1. Configuration menu
    Copy the full SHA
    8fedcf7 View commit details
    Browse the repository at this point in the history
  2. Allows the delayed update graph and project structure which helps in …

    …batching the updates when there are multiple files added/removed/changed
    sheetalkamat committed Jul 13, 2017
    Configuration menu
    Copy the full SHA
    e568976 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    048e67c View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    0365901 View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2017

  1. Configuration menu
    Copy the full SHA
    404aa8f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    71d79c6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f12980d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    00011a5 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2017

  1. Configuration menu
    Copy the full SHA
    0572b15 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    62663a1 View commit details
    Browse the repository at this point in the history
  3. Combine the logic to find config file as well as the watch.

    This should speed up the file open scenarios where the file belongs to same configured project as we would use cache to answer those fileExists answers
    sheetalkamat committed Jul 16, 2017
    Configuration menu
    Copy the full SHA
    dcbd7b1 View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2017

  1. Configuration menu
    Copy the full SHA
    62ef6b1 View commit details
    Browse the repository at this point in the history
  2. Reduce the number of watched config files by watching the chain only …

    …in case of inferred root
    sheetalkamat committed Jul 17, 2017
    Configuration menu
    Copy the full SHA
    2439e7a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ff34a77 View commit details
    Browse the repository at this point in the history

Commits on Jul 20, 2017

  1. Configuration menu
    Copy the full SHA
    1155c37 View commit details
    Browse the repository at this point in the history

Commits on Aug 7, 2017

  1. Configuration menu
    Copy the full SHA
    ae87838 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    802e283 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    499fabc View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    273569f View commit details
    Browse the repository at this point in the history
  5. Program cannot be reused if the missing file is now present

    Also dont update filesByName array just to update missing file paths
    sheetalkamat committed Aug 7, 2017
    Configuration menu
    Copy the full SHA
    94a589b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ef5935b View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    e068475 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    6237b22 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    9b18f7b View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    85b9254 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    69e5abd View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    c814d8e View commit details
    Browse the repository at this point in the history
  13. Emit tests

    sheetalkamat committed Aug 7, 2017
    Configuration menu
    Copy the full SHA
    2dd6aed View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    89c61e7 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    bb91b32 View commit details
    Browse the repository at this point in the history
  16. Refactoring so that instead of just using from tsc --watch the new ap…

    …i is accessible all the time
    sheetalkamat committed Aug 7, 2017
    Configuration menu
    Copy the full SHA
    46e3d1c View commit details
    Browse the repository at this point in the history
  17. Switch back to have tsc.ts the only file thats different in tsc.js ge…

    …neration now that api has tests
    sheetalkamat committed Aug 7, 2017
    Configuration menu
    Copy the full SHA
    031a637 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    0d5e6c9 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    2762232 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    65a6ee0 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    d55150c View commit details
    Browse the repository at this point in the history
  22. Partial implementation for invalidating the program (instead of sourc…

    …e file as that would involve more work) so the files are picked up
    sheetalkamat committed Aug 7, 2017
    Configuration menu
    Copy the full SHA
    8dc6248 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    7474ba7 View commit details
    Browse the repository at this point in the history
  24. Get semantic diagnostics for the program from builder so that it cach…

    …es the errors of unchanged files
    sheetalkamat committed Aug 7, 2017
    Configuration menu
    Copy the full SHA
    6385f7e View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2017

  1. Feedback from the PR

    sheetalkamat committed Aug 8, 2017
    Configuration menu
    Copy the full SHA
    65521bc View commit details
    Browse the repository at this point in the history

Commits on Aug 10, 2017

  1. Configuration menu
    Copy the full SHA
    27988bf View commit details
    Browse the repository at this point in the history
  2. More work on PR feedback

    sheetalkamat committed Aug 10, 2017
    Configuration menu
    Copy the full SHA
    02b8a7d View commit details
    Browse the repository at this point in the history

Commits on Aug 11, 2017

  1. Configuration menu
    Copy the full SHA
    f723beb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b071a86 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8db05c2 View commit details
    Browse the repository at this point in the history

Commits on Aug 12, 2017

  1. Configuration menu
    Copy the full SHA
    594482d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d0a23bb View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2017

  1. Configuration menu
    Copy the full SHA
    59d07dc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9895082 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f1b1b12 View commit details
    Browse the repository at this point in the history
  4. Update based on feedback

    sheetalkamat committed Aug 14, 2017
    Configuration menu
    Copy the full SHA
    136b091 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2017

  1. Update to PR feedback

    sheetalkamat committed Aug 15, 2017
    Configuration menu
    Copy the full SHA
    6bf9133 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a99c04e View commit details
    Browse the repository at this point in the history

Commits on Aug 18, 2017

  1. Update based on feedback

    sheetalkamat committed Aug 18, 2017
    Configuration menu
    Copy the full SHA
    b66b752 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    da0d374 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e639ceb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8deef58 View commit details
    Browse the repository at this point in the history
  5. When getting default project from session, get it only if the script …

    …info is not orphan
    
    Since the closed script info's that are orphan arent removed immediately but on next open request, treat the orphan script infos as if they are not present in the session
    sheetalkamat committed Aug 18, 2017
    Configuration menu
    Copy the full SHA
    c425128 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d217bec View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    60e2e68 View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2017

  1. More PR feedback work

    sheetalkamat committed Aug 21, 2017
    Configuration menu
    Copy the full SHA
    84b2e23 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3908325 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2017

  1. Configuration menu
    Copy the full SHA
    7173da2 View commit details
    Browse the repository at this point in the history
  2. Adding test for #16456 to verify watched directories in case-sensitiv…

    …e and non sensitive file system and fixing caching
    sheetalkamat committed Aug 22, 2017
    Configuration menu
    Copy the full SHA
    e500be2 View commit details
    Browse the repository at this point in the history
  3. In Server when polling the file stat's do not send changed event in c…

    …ase the file doesnt exist.
    sheetalkamat committed Aug 22, 2017
    Configuration menu
    Copy the full SHA
    6227a36 View commit details
    Browse the repository at this point in the history
  4. Update the failed lookup watches without doing lookups.

    This helps in not having to deal with duplicate locations and checking if there exists watch
    Anyways the watches are refCount based so we would just addref and remove ref on the same watches
    sheetalkamat committed Aug 22, 2017
    Configuration menu
    Copy the full SHA
    55931c4 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    e65df12 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    e711238 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2017

  1. Configuration menu
    Copy the full SHA
    3b85f3f View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2017

  1. Merge pull request #17820 from Microsoft/tsserverEventChangedFiles

    Event to notify project changes
    sheetalkamat authored Aug 31, 2017
    Configuration menu
    Copy the full SHA
    ea95f3b View commit details
    Browse the repository at this point in the history
  2. Merge pull request #17669 from Microsoft/builder

    Improvements to tsc --watch
    sheetalkamat authored Aug 31, 2017
    Configuration menu
    Copy the full SHA
    9e570c3 View commit details
    Browse the repository at this point in the history
  3. Refactoring to watches and caching of system such that we minimize fu…

    …nction expressions
    
    Also unified watcher info logging
    sheetalkamat committed Aug 31, 2017
    Configuration menu
    Copy the full SHA
    4c79033 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5aafd3f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    17565d8 View commit details
    Browse the repository at this point in the history
  6. Script infos while opening/closing shouldnt mark project as dirty if …

    …the contents dont change
    sheetalkamat committed Aug 31, 2017
    Configuration menu
    Copy the full SHA
    10ea5bf View commit details
    Browse the repository at this point in the history
  7. Watch failed lookups recursively to reduce number of directory watches

    Also we dont need to watch type roots any more
    sheetalkamat committed Aug 31, 2017
    Configuration menu
    Copy the full SHA
    254e393 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    a3b9467 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    16cf7c4 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    d7ce95d View commit details
    Browse the repository at this point in the history
  11. Update tests

    sheetalkamat committed Aug 31, 2017
    Configuration menu
    Copy the full SHA
    345f36d View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    2b97b2c View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    8d5d4c2 View commit details
    Browse the repository at this point in the history

Commits on Sep 1, 2017

  1. Remove the configured project if on next open file if it has no open …

    …files instead of immediately when closing last open file
    sheetalkamat committed Sep 1, 2017
    Configuration menu
    Copy the full SHA
    9e5e20c View commit details
    Browse the repository at this point in the history
  2. Update tests

    sheetalkamat committed Sep 1, 2017
    Configuration menu
    Copy the full SHA
    13aafa2 View commit details
    Browse the repository at this point in the history
  3. Test to verify calls to isProgramUptoDate return true when there is n…

    …o change in compiler options
    sheetalkamat committed Sep 1, 2017
    Configuration menu
    Copy the full SHA
    6c61293 View commit details
    Browse the repository at this point in the history

Commits on Sep 5, 2017

  1. Configuration menu
    Copy the full SHA
    7b2bab5 View commit details
    Browse the repository at this point in the history

Commits on Sep 6, 2017

  1. Configuration menu
    Copy the full SHA
    54f64a1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0ff160f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e6eede1 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2a5d954 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    680994e View commit details
    Browse the repository at this point in the history

Commits on Sep 7, 2017

  1. Invalidate resolution of the failed lookup only if its one of the def…

    …ault extension or is one of the failed lookup location without that default extension
    sheetalkamat committed Sep 7, 2017
    Configuration menu
    Copy the full SHA
    c8e711c View commit details
    Browse the repository at this point in the history
  2. Update the test cases for project changed event since it doesnt apply…

    … to the edits to open files
    sheetalkamat committed Sep 7, 2017
    Configuration menu
    Copy the full SHA
    29e93c3 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b179cd1 View commit details
    Browse the repository at this point in the history

Commits on Sep 8, 2017

  1. Limit the resolution invalidation to max number of files as invalidat…

    …ion for larger cache might take more time than to just recalculate resolutions
    sheetalkamat committed Sep 8, 2017
    Configuration menu
    Copy the full SHA
    67f9533 View commit details
    Browse the repository at this point in the history
  2. Add test case to verify correct resolution file is picked when curren…

    …t resolution file is not removed but higher precedence file is created
    sheetalkamat committed Sep 8, 2017
    Configuration menu
    Copy the full SHA
    de28d02 View commit details
    Browse the repository at this point in the history

Commits on Sep 9, 2017

  1. Do not create map just to store empty reference files. Also update fi…

    …le as changed if file text is same but it had invalidated resolution
    sheetalkamat committed Sep 9, 2017
    Configuration menu
    Copy the full SHA
    5739b68 View commit details
    Browse the repository at this point in the history

Commits on Sep 11, 2017

  1. Configuration menu
    Copy the full SHA
    fdb104b View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2017

  1. Configuration menu
    Copy the full SHA
    aea8630 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b536f9d View commit details
    Browse the repository at this point in the history

Commits on Sep 13, 2017

  1. Simplify event sent on background project update since its anyways ju…

    …st to update the error list
    sheetalkamat committed Sep 13, 2017
    Configuration menu
    Copy the full SHA
    4f7c0e5 View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2017

  1. Configuration menu
    Copy the full SHA
    cf72f2a View commit details
    Browse the repository at this point in the history

Commits on Sep 25, 2017

  1. Configuration menu
    Copy the full SHA
    23acff5 View commit details
    Browse the repository at this point in the history

Commits on Sep 26, 2017

  1. Configuration menu
    Copy the full SHA
    14febe2 View commit details
    Browse the repository at this point in the history
  2. Renamed PartialSystem as DirectoryStructureHost and CachedPartialSyst…

    …em as CachedDirectoryStructureHost
    sheetalkamat committed Sep 26, 2017
    Configuration menu
    Copy the full SHA
    38f3a2b View commit details
    Browse the repository at this point in the history
  3. PR feedback

    sheetalkamat committed Sep 26, 2017
    Configuration menu
    Copy the full SHA
    68d3605 View commit details
    Browse the repository at this point in the history

Commits on Sep 29, 2017

  1. Configuration menu
    Copy the full SHA
    9e08cae View commit details
    Browse the repository at this point in the history

Commits on Oct 2, 2017

  1. PR feedback

    sheetalkamat committed Oct 2, 2017
    Configuration menu
    Copy the full SHA
    835153b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    898559b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7f969e8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4bb4711 View commit details
    Browse the repository at this point in the history

Commits on Oct 3, 2017

  1. Configuration menu
    Copy the full SHA
    8ac01d7 View commit details
    Browse the repository at this point in the history