Macでcoc-tsserverのadd all missing importsが選択肢から消えた
検証内容
- VSCodeでは同じ状態で選択肢が出てくる
- coc-tsserverを古いコミットに戻す
- coc.nvimを古いコミットに戻す
- coc.nvimを最新のmasterにする
- coc-spellcheckerを消す
- coc-settings.jsonの設定を空にする
- coc-tsserverをアンインストールしてから入れ直す
- watchmanをインストールする
- 複数プロジェクトで試す
- 有効にするtsserverをプロジェクトローカルのものにする
- 各種バージョンが、動いていた頃と変わらないことを確認する
- node
- neovim
- npm
- tsserver
- miseでインストールしたnode周りのツールチェインを一旦消してHomebrewで入れたツールチェインを使う
- Linuxで上記の各種バージョンを同じにした状態で選択肢が出てくるか
- Linuxでは問題なくでてきた
CocCommand tsserver.executeAutofixは動くか- 動かない
- Linuxでは動く
- 動かない
全くわからんのでcoc-tsserverのデバッグを始めた。
多くの箇所にログを仕込んでprintデバッグをして、最終的にここに行き着いた
- coc-tsserver/src/server/features/fixAll.ts at a11bc238177b9b6b660292e9c0f198aa1a0f4787 · neoclide/coc-tsserverTsserver extension for coc.nvim that provide rich features like VSCode for javascript & typescript - neoclide/coc-tsserver
github.com
- coc-tsserver/src/server/commands.ts at a11bc238177b9b6b660292e9c0f198aa1a0f4787 · neoclide/coc-tsserverTsserver extension for coc.nvim that provide rich features like VSCode for javascript & typescript - neoclide/coc-tsserver
github.com
ここで、正常に動いているLinuxではdiagnosticsにauto fixに関連するdiagnosticsが入っているのに、Macでは空配列になっていた。
さらにデバッグプリントを進めようかと考えたが、ここまでですでに5時間ほど格闘していたので、一縷の望みにかけてMacを再起動したら直った。
謎は闇に消え去った。