Skip to content

v0.9.2

Choose a tag to compare

@youtyan youtyan released this 30 Jul 01:29
c345737

Highlights

  • macOS でファイル監視が原因でサーバーが応答しなくなる問題を修正しました。fs.watch を close すると libuv が FSEvents スレッドの完了を待ちますが、fseventsd が高負荷で応答しない間はこの待ちが解けず、イベントループごと停止して HTTP リクエストに一切応答しなくなっていました。TCP は LISTEN のままなので、ブラウザからは「つながるが返ってこない」状態に見えていました。
  • 監視を子プロセスへ分離し、親プロセスは close を呼ばずに期限付きで SIGKILL するようにしました。監視側が固まってもビューアー本体は止まりません。
  • macOS / Windows では再帰監視を 1 個にまとめ、close のたびに全パスを再登録する動作をなくしました。
  • 取りこぼされた通知は libuv が JS 側へ渡さないため、定期照合で最終状態に追従するようにしました。
  • 場所が特定できない通知が具体的なパスの通知を上書きして更新が漏れる問題を修正しました。
  • ディレクトリ単位の通知を受け取ったときに、その配下のファイルが更新されない問題を修正しました。

Verification

  • bun run verify (1923 tests)
  • npm pack --dry-run
  • Node.js 20 / 24 CI
  • CodeQL