diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-10-07 21:25:47 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-10-07 22:22:51 +0200 |
| commit | 92e25ffcc5edf5d1a9996bfb921b5a95b826134b (patch) | |
| tree | a95344747b8c43383f0078f1e6ac002bccb78c24 /packages/meshbay-node/src/meshbay_node/indexer/indexer.py | |
| parent | 519c47841787ed7a29140df2dfb9c48b47cc414e (diff) | |
| download | meshbay-92e25ffcc5edf5d1a9996bfb921b5a95b826134b.tar.gz | |
fix(node): drop a directory moved out of the root on Windows too
On Windows watchdog cannot tell what a deleted path was -- it is gone -- and
reports a directory moved out of the root as a file deleted, so the fix in
3d5a168 never ran there and test_the_watcher_reports_a_directory_moved_out
failed. A deleted path the index still holds entries below was a directory.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'packages/meshbay-node/src/meshbay_node/indexer/indexer.py')
| -rw-r--r-- | packages/meshbay-node/src/meshbay_node/indexer/indexer.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/packages/meshbay-node/src/meshbay_node/indexer/indexer.py b/packages/meshbay-node/src/meshbay_node/indexer/indexer.py index 732b499..f06d30f 100644 --- a/packages/meshbay-node/src/meshbay_node/indexer/indexer.py +++ b/packages/meshbay-node/src/meshbay_node/indexer/indexer.py @@ -1274,6 +1274,12 @@ class DirectoryIndexer: if not root.available: return + # On Windows watchdog cannot tell what a deleted path was -- it is + # gone -- and reports a directory moved out as a *file* deleted. + # A path the index still holds entries below was a directory. + if not directory and deleted and self._entries_in_dir(root, file_path): + directory = True + if directory: if file_path == root.path or not await off_disk( self.roots, self._dir_left_the_root, file_path): |