Microsoft/vscode

Explore file watcher handling of verbose VS Code CLI commands

Open

#141,488 opened on 2022年1月25日

GitHub で見る
 (2 comments) (0 reactions) (1 assignee)TypeScript (74,848 stars) (10,221 forks)batch import
debtengineeringhelp wantedmacosmacos-big-surworkbench-cli

説明

Ref https://github.com/microsoft/vscode/issues/141053

Currently:

  • The CLI process on macOS (Big Sur and above) spawns the main process using the open command so that VS Code is launched with the correct entitlements.
  • the open command can only redirect stdout and stderr to files, so we currently create temp files for the open command, and then set up file watchers on the CLI process to detect when those files are being written to.
  • code-insiders --status and code-insiders --verbose both require the setup with the file watchers.
  • :bug: When the main process exits, the CLI process cancels the filewatching, but the watcher might not have finished reading through the file yet. Therefore, some of the expected output is cut off early at the end.

A mitigation is to add in a timeout so that there is a delay between the main process exiting and the filewatcher being cancelled, but there should be a better way to detect when to stop watching. Actually, the issue reminds me a bit of flush() methods in other contexts.

コントリビューターガイド